`
陌上花会开
  • 浏览: 39646 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

CSS3实战开发:手把手教你纯CSS3手风琴特效实战开发(无需JS代码或插件)

阅读更多

各位网友,大家好,我是实战互联网技术部的陌上花会开。前一段时间我给大家分享了一系列CSS3实战开发的案例,继续以前的脚步。

在本次CSS3实战开发案例中,我将手把手带领大家开发纯CSS3的手风琴特效开发。一如既往,先给大家演示效果动画:

上面的效果是纯CSS开发的,大家是不是觉得很棒呢。

现在我将分步骤带领大家实战开发今天的特效。首先,编写html源代码:

 

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="styles.css">
<title>CSS3实战开发:手把手教你CSS3手风琴实战开发</title>
</head>
<body>
<!-- CSS教程,css3教程,html5教程,jquery教程,开发教程,互联网技术,技术分享 -->
<div class='accordion'>
    <ul>
        <li>
            <div class='title'><a href="http://www.itdriver.cn">点击查看更多校花美图</a></div>
            <a href="http://www.itdriver.cn"><img src='imgs/1.jpg'></a>
        </li>
        <li>
            <div class='title'><a href="http://www.itdriver.cn">走近自然,深呼吸</a></div>
            <a href="http://www.itdriver.cn"><img src='imgs/2.jpg'></a>
        </li>
        <li>
            <div class='title'><a href="http://www.itdriver.cn">只要你敢想,没有不可能</a></div>
            <a href="http://www.itdriver.cn"><img src='imgs/3.jpg'></a>
        </li>
        <li>
            <div class='title'><a href="http://www.itdriver.cn">实战互联网流量积极攀升</a></div>
            <a href="http://www.itdriver.cn"><img src='imgs/4.jpg'></a>
        </li>
        <li>
            <div class='title'><a href="http://www.itdriver.cn">爱护大自然,让我们拥有一个绿色的世界</a></div>
            <a href="http://www.itdriver.cn"><img src='imgs/5.jpg'></a>
        </li>
    </ul>
</div>

</body>
</html>

 

 

 

现在看一下尚未应用样式时的页面效果:

 

接着我们在styles.css中编写样式,首先设置页面的基本布局以及对所有元素设置默认样式:

 

根据最开头的演示效果,我们可以发现手风琴的大小是固定的,而且有阴影效果,样式代码如下:

.accordion{
    width:800px; /*设置手风琴默认的宽高度*/
    height:300px;
    overflow:hidden; /*隐藏超出手风琴区域的内容*/
    margin:80px auto;
    box-shadow:0 0 10px 2px rgba(0,0,0,0.4); /*设置手风琴区域的阴影效果*/
}

 

我们从演示效果大概也会发现,默认时手风琴里图片都是显示在一行的,且提示信息title是贴在每个图片的底部。同时title的背景色是半透明的。代码如下:

.accordion ul{width:900px;}

.accordion .title{position:absolute;left:0;bottom:0;width:600px;background:rgba(0,0,0,0.5);}
.accordion .title a{display:block;color:#fff;font-size:16px;padding:20px;}
.accordion li img{display:block;}

.accordion li{
    display:block;
    width:160px;
    height:300px;
    overflow:hidden;
    position:relative;
    float:left;
    border-left:1px solid #aaa;
    box-shadow:0 0 25px 10px rgba(0,0,0,0.4);

    -webkit-transition:all .5s;
    -moz-transition:all .5s;
    -ms-transition:all .5s;
    -o-transition:all .5s;
    transition:all .5s;
}

 

 

此时,我们看一下页面效果:

大家发现手风琴的样式已经出来了。直至此时,当鼠标划过手风琴时,并没有我们期待的动态特效。

细心的你会发现,我在li样式上添加了-webkit-transition:all .5s;这一段样式,这是告诉浏览器,当li的属性发生变化时,执行过度效果。如果你对transition不了解,请看我的精通CSS3教程。

现在我就来添加hover事件,一旦鼠标划过手风琴,更改手风琴内部元素的宽度:

.accordion ul:hover li{width:50px;}
.accordion ul li:hover{width:600px;}

 

在上面这段样式中,首先当鼠标划过ul时,设置所有li的宽度为50px,当划过某一具体的li时,设置当前的宽度为600px。这样,你就会发现鼠标划过li元素时,有一个动态的渐变过度效果。现在来看一下运行效果吧!

至此,本次的手风琴特效就开发完了。大家说是不是很简单呢?

往期精彩实战开发案例一览(已被广为转载,下面只列出部分):

  1. 《CSS3实战开发:百度新闻热搜词特效实战开发

  2. 《CSS3实战开发:手把手教你鼠标滑动特效开发

  3. 《CSS3实战开发:手把手教大家搜索表单发光特效实战开发

  4. CSS3实战开发: 弹性盒模型之响应式WEB界面设计

  5. CSS3线性渐变技术详解及超炫按钮实战开发

  6. CSS3 2D转换之translate技术详解 及 网页导航实战开发

  7. CSS3实战开发:手把手教你照片墙实战开发

  8. CSS3实战开发: 手把手教大家实战开发鼠标划过图片动画特效

  9. CSS3实战开发:仿天猫首页图片展示动画特效实战开发

  10. CSS3实战开发:手把手教大家折角效果实战开发

欢迎大家加入互联网技术交流群:62329335 

个人申明:所分享博文,绝对原创,并力争每一个知识点都通过实战演示来进行验证。
1
0
分享到:
评论

相关推荐

    js css3全屏手风琴特效.zip

    【标题】"js css3全屏手风琴特效"是一个基于JavaScript和CSS3技术实现的交互式网页元素,主要用于创建动态且吸引人的全屏手风琴面板切换效果。这种特效通常用于网站的内容导航,帮助用户以简洁的方式查看和访问大量...

    CSS3带动画效果的手风琴特效.zip

    《CSS3手风琴特效详解及其动画实现》 在网页设计中,动态效果往往能提升用户体验,增强页面的互动性和视觉吸引力。CSS3作为现代网页样式的重要组成部分,提供了丰富的动画和过渡功能,使得无需JavaScript就能实现...

    CSS3响应式垂直手风琴展开收缩特效.zip

    2. CSS文件:包含了响应式样式和手风琴特效的CSS代码,包括媒体查询、过渡和动画效果。 3. JavaScript文件(可选):如果使用了JavaScript进行交互处理,如控制内容的显示和隐藏,那么也会有一个JS文件。 在实际...

    jquery+css3嵌套式手风琴特效

    在网页设计和开发中,"jQuery + CSS3 嵌套式手风琴特效"是一种常见且实用的交互效果,它能有效地节省空间并增强用户体验。这种特效通常应用于导航菜单、内容展示或信息摘要等场景,让用户能够逐级展开和收起内容区块...

    js跟css3手风琴下拉菜单代码.zip

    【标题】"js跟css3手风琴下拉菜单代码.zip"所包含的是一个使用JavaScript和CSS3技术实现的手风琴式下拉菜单的代码示例。手风琴菜单是一种常见的网页交互元素,它允许用户通过点击来展开或收起菜单项,以此节省页面...

    js手风琴特效

    "手风琴特效"是JavaScript在网页设计中的一种常见交互效果,它模拟了手风琴乐器的开合动作,通常用于折叠或展开内容区域,使得大量信息可以以紧凑的形式呈现,提高用户体验。 手风琴特效的核心在于利用JavaScript...

    jQuery CSS3炫酷手风琴特效.zip

    【jQuery CSS3炫酷手风琴特效】是一个结合了JavaScript库jQuery和CSS3技术的交互式网页元素,常用于网站导航或内容展示。这个特效以其蓝色的现代化设计和动态的气泡效果,为用户带来独特的视觉体验。手风琴效果允许...

    jquery css3嵌套式手风琴特效.zip

    总结来说,"jquery css3嵌套式手风琴特效"是一个集成了jQuery和CSS3技术的前端组件,通过巧妙地运用这两者的特性,实现了优雅且可扩展的手风琴效果,适用于各种网页设计和开发场景。对于前端开发者而言,掌握这种...

    CSS3横向切换图片手风琴特效.zip

    【CSS3横向切换图片手风琴特效】是一种利用CSS3的特性和技术实现的动态网页设计效果。在网页设计中,这种特效可以增加用户交互体验,使得内容展示更加生动有趣。下面将详细介绍这个特效涉及的主要知识点: 1. CSS3 ...

    网格图片手风琴jquery特效代码.zip

    网格图片手风琴jquery特效代码,结合网格手风琴缩略图和手风琴面板的功能,给你展示你的图片网站一个有趣的方法。你可以选择使用XML或HTML。功能强大的API将允许进一步提高这个jQuery插件的功能,可以方便地集成到您...

    简洁的CSS3滑动手风琴切换特效

    本教程将详细讲解如何利用CSS3实现一个简洁且具有滑动手风琴切换特效的菜单,该菜单特别适用于内容分类展示,如FAQ或导航栏。这个特效是基于Font Awesome图标库实现的,它提供了大量的矢量图标,使设计更加美观。 ...

    纯CSS3手风琴网页特效

    纯CSS3手风琴网页特效是一种常见的网页交互设计,它以音乐中的手风琴形象为灵感,通过CSS3的特性实现内容的展开与折叠。在网页设计中,手风琴效果通常用于展示有限空间内的多级信息,如FAQs、导航菜单或详细信息的...

    CSS3手风琴菜单特效代码.zip

    总的来说,CSS3手风琴菜单特效代码提供了一个实现网页交互功能的起点,开发者可以通过深入理解和调整这套代码,进一步提升自己在前端开发中的技能和实践经验。无论是学习还是实际应用,这都是一个非常有价值的资源。

    jQuery+css3图文布局手风琴滑动切换代码

    《jQuery+CSS3图文布局手风琴滑动切换代码详解》 在网页设计与开发中,动态效果的运用能够极大地提升用户体验,使页面更具吸引力。本文将深入解析一款结合了jQuery和CSS3技术的“图文布局手风琴滑动切换”代码,...

    js和CSS3漂亮的手风琴菜单特效

    本项目利用JavaScript(js)和CSS3技术,构建了一款美观的垂直手风琴菜单效果,旨在使用户能够轻松地展开和收起各个菜单项。 首先,我们来探讨CSS3在这其中的作用。CSS3提供了许多新的选择器和样式属性,使得我们...

    漂亮的CSS3手风琴动画特效

    本文将详细解析"漂亮的CSS3手风琴动画特效"的知识点,帮助你理解如何创建一个设计时尚、颜色搭配得当且带有动画效果的手风琴切换代码。 手风琴动画特效是一种常见的UI组件,它允许用户通过点击或触摸来展开或折叠...

    HTML5+CSS3+JS入门教程 + 源代码 pdf

    同时,JavaScript还可以借助框架如React、Vue.js或Angular进行更高效的应用开发。 这个入门教程很可能会涵盖以下内容: 1. HTML5的基础语法和新特性:学习如何创建结构化的文档,使用新标签,以及处理多媒体。 2. ...

    CSS3垂直手风琴Accdion特效

    1. **选择器和伪类**:CSS3引入了新的选择器和伪类,如`:hover`, `:active`, `:focus`,以及`:checked`等,这些在实现手风琴的交互效果中起到关键作用。例如,`:checked`伪类可以检测到复选框的状态变化,从而控制...

    Web前端开发案例教程(HTML5+CSS3)(微课版)_源代码.zip

    《Web前端开发案例教程(HTML5+CSS3)(微课版)》是一份重要的教学资料,主要关注现代Web开发的基础技术,即HTML5和CSS3。这些技术是构建交互式、响应式和动态网页的核心工具。源代码的提供使得学习者能够深入理解...

Global site tag (gtag.js) - Google Analytics