`

纯CSS3带动画效果导航菜单

阅读更多

随着互联网的发展,网页能表现的东西越来越多。由最开始单纯的文字和链接构成的网页,到后来的表格布局,再到div+css模式,现在发展到了html+css3。网页能表达的东西越来越多,css3兴起已经很多年了,不多由于国内网站要求对IE的兼容,html5+css3的发展很缓慢。

html5+css3的出现给前端开发者提供了更多的可能性,以前很多只能通过JS实现的效果用纯粹的css3就能实现了。

下面介绍一个博主在css3学习过程中写的一个纯css3实现的带动画效果的导航菜单。

下面是效果图:

pure-css3-animated-navigation

 

查看示例请在支持css3的浏览器中查看效果,最新版的chrome浏览器下效果最佳。

特别声明此demo为博主原创,可以下载免费使用。

话不多说,直接贴源码:

css:

 
  1. *{   
  2.     margin:0;   
  3.     padding:0;   
  4. }   
  5.   
  6. html{   
  7.     background: #333d43;   
  8.        
  9. }   
  10. footer a{   
  11.     color:#fff;   
  12.     text-decoration:none;   
  13. }   
  14. footer a:hover{   
  15.     text-decoration:underline;   
  16.     }   
  17. body{   
  18.     min-height:500px;   
  19.     font:14px/1.3 'Microsoft YaHei';   
  20.     color:#888;   
  21.     padding:10px;   
  22. }   
  23. nav{   
  24.     position:relative;   
  25.     border-radius:5px;   
  26.     display:block;   
  27.     margin30px auto 0;   
  28.     width:800px;   
  29.     background:#fff;   
  30.     border-radius:5px;   
  31.     box-shadow: 1px 1px 33px #fff;   
  32.     }   
  33. .homeIcon{   
  34.     position:relative;   
  35.     display:block;   
  36.     width:50px;   
  37.     height:40px;   
  38.     }   
  39. #home:hover > a .home-top{   
  40.     border-bottom:10px #fff solid;   
  41.     }      
  42. #home:hover > a .home-top-r{   
  43.     background:#fff;   
  44.     }   
  45. #home:hover > a .home-door-l{   
  46.     background:#fff;   
  47.     }   
  48. #home:hover > a .home-door-r{   
  49.     background:#fff;   
  50.     }              
  51. .home-top{   
  52.     position:absolute;   
  53.     left:15px;   
  54.     top:0px;   
  55.     border-left:10px transparent solid;   
  56.     border-right:10px transparent solid;   
  57.     border-top:10px transparent solid;   
  58.     border-bottom:10px #C2C2C2 solid;   
  59.     box-shadow: 0px 1px 0px #000;   
  60.     width:0px;   
  61.     height:0px;    
  62.     }      
  63. .home-top-r{   
  64.     position:absolute;   
  65.     left:27px;   
  66.     top:13px;   
  67.     width:4px;   
  68.     height:6px;   
  69.     background:#C2C2C2;   
  70.     }   
  71. .home-door-l{   
  72.     position:absolute;   
  73.     left:18px;   
  74.     top:20px;   
  75.     width:5px;   
  76.     height:6px;   
  77.     background:#C2C2C2;   
  78.     }   
  79. .home-door-r{   
  80.     position:absolute;   
  81.     left:27px;   
  82.     top:20px;   
  83.     width:5px;   
  84.     height:6px;   
  85.     background:#C2C2C2;   
  86.     }              
  87. .fancyNav{   
  88.     display:block;   
  89.     position:relative;   
  90.     border-radius:5px;   
  91.     background-image: linear-gradient(rgba(41, 41, 41, 0.75) 0%, rgba(54, 54, 54, 0.72) 50%, rgba(24, 23, 23, 0.94) 51%);   
  92.     background-image: -webkit-linear-gradient(rgba(41, 41, 41, 0.75) 0%, rgba(54, 54, 54, 0.72) 50%, rgba(24, 23, 23, 0.94) 51%);   
  93.     background-image: -moz-linear-gradient(rgba(41, 41, 41, 0.75) 0%, rgba(54, 54, 54, 0.72) 50%, rgba(24, 23, 23, 0.94) 51%);   
  94.     background-image: -o-linear-gradient(rgba(41, 41, 41, 0.75) 0%, rgba(54, 54, 54, 0.72) 50%, rgba(24, 23, 23, 0.94) 51%);   
  95.     background-image: -ms-linear-gradient(rgba(41, 41, 41, 0.75) 0%, rgba(54, 54, 54, 0.72) 50%, rgba(24, 23, 23, 0.94) 51%);   }   
  96. .fancyNav li{   
  97.     position:relative;   
  98.   
  99.     height:40px;   
  100.     line-height:40px;   
  101.     padding:0px 20px;   
  102.     display:block;   
  103.     float:left;   
  104.     border-right:1px #000 solid;   
  105.     }   
  106. .fancyNav li:hover{   
  107.     background:rgba(10, 5, 5, 0.2);   
  108.         }      
  109. .fancyNav li ul{   
  110.     position:absolute;   
  111.     display:none;   
  112.     left:0px;   
  113.     overflow:hidden;   
  114.     }   
  115. .fancyNav li:hover>ul{   
  116.     display:block;   
  117.     animation:animated .5s ease 0s 1 alternate;   
  118.     -webkit-animation:animated .5s ease 0s 1 alternate;   
  119.     -moz-animation:animated .5s ease 0s 1 alternate;   
  120.     -ms-animation:animated .5s ease 0s 1 alternate;    
  121.     -o-animation:animated .5s ease 0s 1 alternate;}   
  122. @keyframes animated   
  123.     {   
  124.     0%      {transform: rotate(0deg);opacity:0;}   
  125.     100%    {transform: rotate(-360deg);opacity:1;}   
  126.     }   
  127. @-webkit-keyframes animated   
  128.     {   
  129.     0%      {-webkit-transform: rotate(0deg);opacity:0;}   
  130.     100%    {-webkit-transform: rotate(-360deg);opacity:1;}   
  131.     }   
  132. @-moz-keyframes animated   
  133.     {   
  134.     0%      {-moz-transform: rotate(0deg);opacity:0;}   
  135.     100%    {-moz-transform: rotate(-360deg);opacity:1;}   
  136.     }   
  137. @-o-keyframes animated   
  138.     {   
  139.     0%      {-o-transform: rotate(0deg);opacity:0;}   
  140.     100%    {-o-transform: rotate(-360deg);opacity:1;}   
  141.     }   
  142. @-ms-keyframes animated   
  143.     {   
  144.     0%      {-ms-transform: rotate(0deg);opacity:0;}   
  145.     100%    {-ms-transform: rotate(-360deg);opacity:1;}   
  146.     }   
  147. .fancyNav li ul li   
  148. {   
  149.     display:block;   
  150.     margin:0px;   
  151.     border-top1px solid #989898;   
  152.     border-bottom1px solid #343434;   
  153.     background:rgba(10, 5, 5, 0.45);   
  154.     height:30px;   
  155.     line-height:30px;   
  156.     width:60px;   
  157. }      
  158. .fancyNav li ul li:hover{   
  159.     background:rgba(10, 5, 5, 0.9);   
  160.     }   
  161. li a{   
  162.     color:#fff;   
  163.     text-decoration:none;   
  164.     text-shadow0px 1px 0px #000  
  165.     }   
  166. input[type=search] {   
  167. -webkit-appearance: none;   
  168. outlinenone;   
  169. }   
  170. #searchform {   
  171. positionabsolute;   
  172. rightright10px;   
  173. bottombottom6px;   
  174. z-index: 100;   
  175. width160px;   
  176. }   
  177. #searchform #s {   
  178. outline:none;              
  179. width80px;   
  180. floatrightright;   
  181. background#fff;   
  182. bordernone;   
  183. padding6px 10px;   
  184. -webkit-border-radius: 5px;   
  185. -moz-border-radius: 5px;   
  186. border-radius: 5px;   
  187. -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.2);   
  188. -moz-box-shadow: inset 0 1px 2px rgba(0,0,0,.2);   
  189. box-shadow: inset 0 1px 2px rgba(0,0,0,.2);   
  190. -webkit-transition: width .7s;   
  191. -moz-transition: width .7s;   
  192. transition: width .7s;   
  193. }   
  194. #searchform #s:focus {   
  195. width150px;   
  196. }   
  197. footer {   
  198. margin-top:400px;      
  199. color#BBBBBB;   
  200. font-size15px;   
  201. line-height: 1.6;   
  202. padding60px 20px 0;   
  203. text-aligncenter;   
  204. displayblock;   
  205. }  

html:

 
  1. <!DOCTYPE html>   
  2. <html>   
  3.     <head>   
  4.         <meta charset="utf-8" />   
  5.            
  6.         <title>CSS3 Animated Navigation Menu | Tutorialzine Demo</title>   
  7.            
  8.         <!-- Our CSS stylesheet file -->   
  9.         <link rel="stylesheet" href="assets/css/styles.css" />   
  10.            
  11.         <!-- Including the Lobster font from Google's Font Directory -->   
  12.         <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Lobster" />   
  13.            
  14.         <!-- Enabling HTML5 support for Internet Explorer -->   
  15.         <!--[if lt IE 9]>   
  16.           <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>   
  17.         <![endif]-->   
  18.     </head>   
  19.        
  20.     <body>   
  21.            <form id="searchform">   
  22.             <input type="search" id="s" placeholder="Search">   
  23.             </form>   
  24.         <nav>   
  25.             <ul class="fancyNav">   
  26.                 <li id="home"><a href="#home" class="homeIcon"><div class="home-top"></div><div class="home-top-r"></div><div class="home-door-l"></div><div class="home-door-r"></div></a></li>   
  27.                 <li id="news"><a href="#news">前端设计</a>   
  28.                 <ul>   
  29.                 <li><a href="">HTML5</a></li>   
  30.                 <li><a href="">CSS3</a></li>   
  31.                 <li><a href="">JQUERY</a></li>   
  32.                 </ul>   
  33.                 </li>   
  34.                 <li id="about"><a href="#about">编程语言</a>   
  35.                                 <ul>   
  36.                 <li><a href="">PHP</a></li>   
  37.                 <li><a href="">JAVA</a></li>   
  38.                 <li><a href="">wordpress</a></li>   
  39.                 <li><a href="">CodeIgniter</a></li>   
  40.                 </ul>   
  41.   
  42.                 </li>   
  43.                 <li id="services"><a href="#services">生活</a>   
  44.            
  45.   
  46.                 </li>   
  47.                 <li id="contact"><a href="#contact">留言板</a>   
  48.   
  49.                 </li>   
  50.             <form id="searchform">   
  51.             <input type="search" id="s" placeholder="Search">   
  52.             </form>   
  53.             <div style="display:block;clear:both;"></div>   
  54.             </ul>   
  55.         </nav>   
  56.   
  57.        <footer>Tutorial by &nbsp;&nbsp;<a href="http://bloglaotou.duapp.com" target="_blank">sanyecao</a>&nbsp;&nbsp;©2013</footer>        
  58.     </body>   
  59. </html>  
分享到:
评论

相关推荐

    CSS3动画按钮导航菜单特效.rar

    CSS3动画按钮导航菜单特效.rar CSS3动画按钮导航菜单特效.rar CSS3动画按钮导航菜单特效.rar CSS3动画按钮导航菜单特效.rar CSS3动画按钮导航菜单特效.rar CSS3动画按钮导航菜单特效.rar CSS3动画按钮导航菜单特效....

    两款纯css3实现的动画菜单.zip

    本文将深入探讨“两款纯CSS3实现的动画菜单”的知识点,旨在帮助你理解和应用这些技术来提升用户体验。 首先,让我们理解“纯CSS3”这个概念。纯CSS3意味着这些动画菜单的实现不依赖于JavaScript或者其他后端语言,...

    9种html5+css3隐藏侧边栏导航菜单动画效果

    在这个主题中,“9种html5+css3隐藏侧边栏导航菜单动画效果”主要关注的是如何利用这两门技术来创建具有视觉吸引力的侧边栏导航菜单,并通过动态效果提升用户体验。 首先,HTML5的新元素如`&lt;nav&gt;`、`&lt;section&gt;`和`...

    黑色css3导航栏下拉菜单动画特效

    总之,黑色css3导航栏下拉菜单动画特效是通过CSS3的特性实现的,包括选择器、伪类、过渡、布局和动画。掌握这些技能不仅可以提升网站的用户体验,也是网页设计师必备的专业素养。通过实践和学习,你可以创建出更多...

    CSS3鼠标经过导航菜单动画效果代码

    总的来说,这个"CSS3鼠标经过导航菜单动画效果代码"实例展示了如何利用CSS3的强大力量来提升用户体验,通过简单的代码实现富有吸引力的交互效果。理解并熟练掌握这些技巧,能够帮助开发者创造出更加引人入胜的网页...

    纯CSS3炫酷的多级导航菜单动画效果代码下载

    本文将深入探讨如何利用纯CSS3实现炫酷的多级导航菜单动画效果。 首先,CSS3引入了许多新的选择器、属性和功能,使得我们可以不用JavaScript就能创建复杂的动态效果。例如,`transition`属性用于定义元素从一种样式...

    CSS3气泡动画文字导航菜单代码

    【CSS3气泡动画文字导航菜单代码】是一种利用CSS3技术实现的动态效果,它为网页的导航菜单赋予了生动的视觉表现。在这款设计中,当用户将鼠标悬停在文字导航链接上时,相应的图标气泡会从文字下方弹出,呈现向上的...

    jQuery+CSS3镜像文字动画垂直导航菜单特效

    本示例中,我们将深入探讨一个结合了jQuery和CSS3技术的创新设计——"jQuery+CSS3镜像文字动画垂直导航菜单特效"。这个特效在用户将鼠标悬停在菜单项上时,会呈现出独特的文字镜像动画效果,为网站增添了一抹现代感...

    9种html5+css3隐藏侧边栏导航菜单动画效果.rar

    在本资源包中,“9种html5+css3隐藏侧边栏导航菜单动画效果”展示了如何利用这两项技术来设计各种创新且实用的侧边栏导航菜单。 1. **HTML5基础**:HTML5是超文本标记语言的最新版本,增加了许多新的元素,如(导航...

    纯css动感背景滑动的导航菜单特效代码

    本文将深入探讨如何使用纯CSS创建一个具有动感背景滑动变换的导航菜单特效。这个特效利用了CSS的背景定位和过渡属性,使得在HTML5兼容浏览器下的表现极具动态感。 首先,我们从HTML结构开始。在`index.html`文件中...

    css3超酷3D旋转导航菜单特效

    其次,导航菜单的3D立方体旋转效果是通过组合多个CSS3选择器和伪类实现的。例如,`:hover`伪类用于检测鼠标悬停事件,当鼠标悬停在某个菜单项上时,应用相应的3D旋转样式。此外,可能还使用了`transition`属性来平滑...

    13种html5+css3全屏遮罩效果导航菜单

    综上所述,"13种html5+css3全屏遮罩效果导航菜单"这个主题涵盖了从基础的HTML5和CSS3特性,到高级的交互设计和动画实现,是提升网页设计技能的重要学习资源。通过实践这些示例,开发者可以更好地掌握这两种技术,...

    CSS3动画下拉导航菜单

    随着技术的发展,CSS3已经引入了丰富的动画效果,使得导航菜单的设计更加生动和交互性更强。本篇将深入探讨如何利用CSS3动画实现下拉导航菜单。 首先,我们需要了解CSS3中的关键帧动画(Keyframe Animations),这...

    css3 3d翻转导航菜单鼠标悬停菜单3D翻转动画效果代码

    css3 3d翻转导航菜单鼠标悬停菜单3D翻转动画效果代码 css3 3d翻转导航菜单鼠标悬停菜单3D翻转动画效果代码 css3 3d翻转导航菜单鼠标悬停菜单3D翻转动画效果代码 css3 3d翻转导航菜单鼠标悬停菜单3D翻转动画效果代码

    纯实现CSS3创意导航菜单特效.zip

    【标题】中的“纯实现CSS3创意导航菜单特效”指的是使用CSS3的特性和功能来设计和构建一种创新且引人注目的网站导航菜单。这种菜单不仅提供了基本的导航功能,还利用CSS3的新特性增加了视觉吸引力和用户体验。 在...

    CSS3动画按钮导航菜单特效

    【CSS3动画按钮导航菜单特效】是现代网页设计中一种吸引用户注意力的创新技术,它结合了CSS3和HTML5 SVG元素,为网站的交互体验增添了动态美感。在这个特效中,我们主要关注以下几个核心知识点: 1. **CSS3选择器**...

    纯CSS菜单、动画

    纯CSS写的导航菜单以及动画,当然可能会不兼容低版本的IE

    CSS3鼠标悬停动画下拉导航菜单代码

    总结来说,这个“CSS3鼠标悬停动画下拉导航菜单代码”示例展示了如何利用CSS3的选择器、伪类、过渡效果、变换属性以及响应式设计来创建一个交互性强且视觉效果出色的导航菜单。通过理解和应用这些技术,你可以为自己...

    懒人原生纯css向右展开多级导航菜单代码

    通过以上步骤,你就可以创建一个纯CSS实现的、向右展开的多级导航菜单。这个方法既简单又高效,适用于各种网页项目。在实际应用中,你可以根据自己的需求调整样式和动画效果,以满足特定的设计要求。在提供的压缩包...

Global site tag (gtag.js) - Google Analytics