欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用CSS3创建动态菜单效果

程序员文章站 2022-07-07 22:08:04
这篇文章主要介绍了使用CSS3创建动态菜单效果,可以先看文中开头demo演示的效果,需要的朋友可以参考下... 15-07-10...

 该教程,我们将讨论css3的一些新功能和新特性,并教你在不使用图片和javascript的情况下,如何制作酷炫的圆形导航菜单。该实例将用到css3的新特性: border-radius和animation。

使用CSS3创建动态菜单效果
 demo演示

第一步:编辑菜单的html代码

  菜单包含三个列表项,分别取名为“menu1”、“menu2”、“menu3”。
 

xml/html code复制内容到剪贴板
  1. <div class="css3menus">     
  2. <ul>     
  3.     <li>menu1</li>     
  4.     <li>menu2</li>     
  5.     <li>menu3</li>     
  6. </ul>     
  7. </div>  

  第二步:设置菜单的背景

  在该步骤中,我们将把导航的背景设置为黑色。宽度、高度和内边距为可选项,可以不设置。
 

css code复制内容到剪贴板
  1. .<span style="width: auto; height: auto; float: none;" id="4_nwp"><a style="text-decoration: none;" mpid="4" target="_blank" href="http://cpro.baidu.com/cpro/ui/uijs.php?adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=0&is_app=0&jk=e2fbae28688be8a0&k=css3&k0=css3&kdi0=0&luki=10&n=10&p=baidu&q=06011078_cpr&rb=0&rs=1&seller_id=1&sid=a0e88b6828aefbe2&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1922429&u=http%3a%2f%2fwww%2eadmin10000%2ecom%2fdocument%2f2453%2ehtml&urlid=0" id="4_nwl"><span style="color:#0000ff;font-size:14px;width:auto;height:auto;float:none;">css3</span></a></span>menus {     
  2. background#14080a;     
  3. width:506px;     
  4. height:260px;     
  5. padding:20px;     
  6. }  

  如下图:
使用CSS3创建动态菜单效果

第三步:利用border-radius,制作圆形导航。

  该步中,我们会利用css3的一些酷的功能,尤其是border-radius ,将每个列表项的背景设置为黄色,形状为圆形。 
 

css code复制内容到剪贴板
  1. ul {     
  2. list-stylenone;     
  3. }     
  4.     
  5. li {     
  6. float:left;     
  7. font14px/10px arialverdanasans-serif;     
  8. color:#fff;     
  9. background-color:#cccc00;     
  10. width80px;     
  11. height80px;     
  12. padding:20px;     
  13. margin:0 30px 0 0;     
  14. -webkit-border-radius: 60px;     
  15. -moz-border-radius: 60px;     
  16. border-radius: 60px;     
  17. }  

  菜单看起来呈下面样子:
使用CSS3创建动态菜单效果

第四步:设置菜单的对齐方式

  本步骤中,我们将为每个列表项设置特定的背景颜色与位置:
 

css code复制内容到剪贴板
  1. li#menu1 {     
  2. background-color#00ffcc;     
  3. }     
  4. li#menu2 {     
  5. background-color#cc9900;     
  6. margin-top:100px;     
  7. }     
  8. li#menu3 {     
  9. background-color#33ff66;     
  10. margin-top:50px;     
  11. }  

  现在菜单看起来呈下面样子:
使用CSS3创建动态菜单效果

第五步:设置菜单中链接的对齐方式
 

css code复制内容到剪贴板
  1. li a {     
  2. color:#fff;     
  3. text-decoration:none;     
  4. display:<span style="width: auto; height: auto; float: none;" id="2_nwp"><a style="text-decoration: none;" mpid="2" target="_blank" href="http://cpro.baidu.com/cpro/ui/uijs.php?adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=0&is_app=0&jk=e2fbae28688be8a0&k=block&k0=block&kdi0=0&luki=7&n=10&p=baidu&q=06011078_cpr&rb=0&rs=1&seller_id=1&sid=a0e88b6828aefbe2&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1922429&u=http%3a%2f%2fwww%2eadmin10000%2ecom%2fdocument%2f2453%2ehtml&urlid=0" id="2_nwl"><span style="color:#0000ff;font-size:14px;width:auto;height:auto;float:none;">block</span></a></span>;     
  5. width80px;     
  6. height45pxtext-aligncenter;     
  7. padding:35px 0 0 0;     
  8. margin:0 40px 0 0;     
  9. -webkit-border-radius: 40px;     
  10. -moz-border-radius: 40px;     
  11. border-radius: 40px;     
  12. }     
  13. li#menu1 a {     
  14. background-color#ff0000;     
  15. }     
  16. li#menu2 a {     
  17. background-color#660033;     
  18. }     
  19. li#menu3 a {     
  20. background-color#66cccc;     
  21. }  

  菜单现阶段的样子:

使用CSS3创建动态菜单效果

第六步:定义另一种效果,当鼠标悬浮在链接上时进行展现 
 

css code复制内容到剪贴板
  1. li a:hover,     
  2. li a:focus,     
  3. li a:active {     
  4. width120px;     
  5. height:65px;     
  6. padding:55px 0 0 0;     
  7. margin:-20px 0 0 -20px;     
  8. -webkit-border-radius: 60px;     
  9. -moz-border-radius: 60px;     
  10. border-radius: 60px;     
  11. }  

  菜单样式如图:
使用CSS3创建动态菜单效果

第七步:最后为导航增加动画效果
 

css code复制内容到剪贴板
  1. li a:hover,     
  2. li a:focus,     
  3. li a:active {     
  4. -webkit-animation-name:bounce;     
  5. -webkit-animation-duration:1s;     
  6. -webkit-animation-iteration-count:4;     
  7. -webkit-animation-direction:alternate;     
  8. }     
  9. @-webkit-keyframes bounce{<span style="width: auto; height: auto; float: none;" id="1_nwp"><a style="text-decoration: none;" mpid="1" target="_blank" href="http://cpro.baidu.com/cpro/ui/uijs.php?adclass=0&app_id=0&c=news&cf=1001&ch=0&di=128&fv=0&is_app=0&jk=e2fbae28688be8a0&k=from&k0=from&kdi0=0&luki=2&n=10&p=baidu&q=06011078_cpr&rb=0&rs=1&seller_id=1&sid=a0e88b6828aefbe2&ssp2=1&stid=0&t=tpclicked3_hc&tu=u1922429&u=http%3a%2f%2fwww%2eadmin10000%2ecom%2fdocument%2f2453%2ehtml&urlid=0" id="1_nwl"><span style="color:#0000ff;font-size:14px;width:auto;height:auto;float:none;">from</span></a></span>{margin:0 40px 0 0;}     
  10. to{margin:120px 40px 0 0;}     
  11. }  

  菜单所产生的动画效果:
使用CSS3创建动态菜单效果

结论

  通过上面教程,你已经学到如何制作酷的动画菜单。在制作过程中不需要使用javascript和图片,只需要使用css3的一些酷的特性即可。该菜单可以完美地运行于chrome和safari浏览器。在firefox浏览器中,无法看到动画效果。