这次我们要来分享一款很特别的CSS3菜单,菜单的外观是飘带状的,并且每一个菜单项有一个精美的小图标,鼠标滑过菜单项时,菜单项就会向上凸起,像是飘带飘动一样,形成非常酷的3D视觉效果。这款CSS3飘带状3D菜单非常适合作一些活动页面的菜单导航。

在线预览   源码下载

实现的代码。

htmll代码:

Html代码  
  1. <nav>
  2. <menu>
  3. <li><a href="#"><span>t</span> <span>twitter</span> </a></li>
  4. <li id="at"><a href="#"><span>c</span> <span>codepen</span> </a></li>
  5. <li><a href="#"><span>d</span> <span>dribbble</span> </a></li>
  6. <li><a href="#"><span>g</span> <span>google+</span> </a></li>
  7. </menu>
  8. <div class="ribbon left">
  9. </div>
  10. <div class="ribbon right">
  11. </div>
  12. </nav>

css代码:

Html代码  
  1. *
  2. {
  3. padding: 0;
  4. margin: 0;
  5. border: 0;
  6. }
  7. *:after, *:before
  8. {
  9. display: block;
  10. content: "";
  11. position: absolute;
  12. }
  13. body
  14. {
  15. #3d332a;
  16. background-image: url('9690bg.jpg');
  17. padding-top: 50px;
  18. }
  19. nav
  20. {
  21. width: 476px;
  22. margin: auto;
  23. position: relative;
  24. }
  25. menu:after, menu:before
  26. {
  27. top: 0;
  28. width: 60px;
  29. height: 76px;
  30. background: #eae2d5;
  31. }
  32. menu:after
  33. {
  34. clear: both;
  35. right: -61px;
  36. border-right: 1px solid #857e74;
  37. }
  38. menu:before
  39. {
  40. left: -55px;
  41. border-left: 1px solid #857e74;
  42. }
  43. .ribbon
  44. {
  45. position: absolute;
  46. top: 76px;
  47. border-style: solid;
  48. border-width: 13px;
  49. }
  50. .ribbon.left
  51. {
  52. left: -55px;
  53. border-color: #857e74 #857e74 transparent transparent;
  54. }
  55. .ribbon.right
  56. {
  57. left: 511px;
  58. border-color: #857e74 transparent transparent #857e74;
  59. }
  60. .left:after, .left:before
  61. {
  62. left: -68px;
  63. border-style: solid;
  64. z-index: -2;
  65. }
  66. .left:after
  67. {
  68. top: -68px;
  69. border-width: 58px 0 0 56px;
  70. border-color: #eae2d5 transparent transparent transparent;
  71. }
  72. .left:before
  73. {
  74. top: -26px;
  75. border-width: 0 40px 38px 41px;
  76. border-color: transparent transparent #eae2d5 transparent;
  77. }
  78. .right:after, .right:before
  79. {
  80. right: -65px;
  81. border-style: solid;
  82. z-index: -2;
  83. }
  84. .right:before
  85. {
  86. top: -25px;
  87. border-width: 0 40px 38px 38px;
  88. border-color: transparent transparent #eae2d5 transparent;
  89. }
  90. .right:after
  91. {
  92. top: -65px;
  93. border-width: 58px 56px 0 0;
  94. border-color: #eae2d5 transparent transparent transparent;
  95. }
  96. li
  97. {
  98. float: left;
  99. position: relative;
  100. margin-left: 33px;
  101. cursor: pointer;
  102. #eae2d5;
  103. list-style-type: none;
  104. border-left: 2px solid #d7cfc2;
  105. border-right: 2px solid #d7cfc2;
  106. transition: margin .1s ,padding .1s ,border 1s;
  107. }
  108. li:first-child
  109. {
  110. margin-left: 20px;
  111. }
  112. li:before, li:after
  113. {
  114. display: block;
  115. position: absolute;
  116. top: 0;
  117. width: 20px;
  118. height: 100%;
  119. background: inherit;
  120. transition: all .1s;
  121. }
  122. li:before
  123. {
  124. right: 100%;
  125. }
  126. li:after
  127. {
  128. left: 100%;
  129. }
  130. li:hover
  131. {
  132. margin-top: -9px;
  133. box-shadow: 0 4px 10px 0px #000;
  134. transition: margin .2s ,padding .2s;
  135. }
  136. li:hover:before, li:hover:after
  137. {
  138. height: 86%;
  139. background: #d7cfc2;
  140. transition: all .2s;
  141. }
  142. li:hover:before
  143. {
  144. transform: rotate(-30deg) skew(-30deg) translate(1.5px,9px);
  145. }
  146. li:hover:after
  147. {
  148. transform: rotate(30deg) skew(30deg) translate(-1.5px,9px);
  149. }
  150. a
  151. {
  152. display: block;
  153. padding: 10px 15px;
  154. text-decoration: none;
  155. text-align: center;
  156. }
  157. a span
  158. {
  159. text-shadow: 1px 1px 1px #FFF;
  160. color: #857e74;
  161. transition: all .2s;
  162. }
  163. a span:first-child
  164. {
  165. font-family: icon;
  166. font-size: 33px;
  167. display: block;
  168. }
  169. a span:last-child
  170. {
  171. text-transform: capitalize;
  172. font-family: 'Georgia';
  173. font-size: 11px;
  174. letter-spacing: 1px;
  175. font-style: italic;
  176. color: #6488ba;
  177. }
  178. li:hover span
  179. {
  180. transition: all .2s;
  181. }
  182. li:hover a span:first-child
  183. {
  184. color: #6488ba;
  185. text-shadow: 1px 1px 1px #FFF , 0 0 1px #6488ba;
  186. }
  187. li:hover a span:last-child
  188. {
  189. color: #857e74;
  190. }
  191. @font-face
  192. {
  193. font-family: icon;
  194. src: url('http://bennettfeely.com/fonts/icons.woff');
  195. }

转载于:https://www.cnblogs.com/xiaochao12345/p/4363437.html

基于CSS3飘带状3D菜单 菜单带小图标相关推荐

  1. CSS导航条菜单:带小三角形

    很多网页的导航条都会有小三角形,其实实现这个功能也挺简单. 拿菜鸟教程首页导航做个例子 首先写一个大的div_nav,而"首页""菜鸟笔记""菜鸟工具 ...

  2. 前端——菜鸟网站横向CSS导航条菜单:带小三角形

    之前看到很多网页的导航条都会有小三角形,一直好奇是如何实现的,正好前些天做的菜鸟教程首页的导航栏也有小三角形,就研究了一下它的实现方法.菜鸟教程首页导航如下图: 其实实现这个功能也挺简单.首先写一个大 ...

  3. html表单内加入小图标,精美的HTML5/CSS3表单 带小图标

    今天我们要来分享一款非常精美的HTML5/CSS3表单,准备地说,这是一款经过美化的input输入表单,每一个输入表单都可以定义其两侧的小图标,非常华丽.另外,这款表单应用还采用了3种不同的风格主题, ...

  4. iOS 二维码扫描和成像,成像带小图标 自定义色值

    工具下载:http://download.csdn.net/detail/wsk_123_123/7177635 代码: // // YYViewController.h // Dm // // Cr ...

  5. MFC如何添加系统菜单(菜单添加小图标)

    先来介绍一下要用到的函数(win32版) 函数原型:HMENU GetSystemMenu(HWND hWnd,BOOL bRevert): 参数: hWvd:拥有窗口菜单拷贝的窗口的句柄. BPev ...

  6. css3+jQuery制作导航菜单(带动画效果)

    <!DOCTYPE html> <html><head><meta charset="UTF-8"><title>css ...

  7. 导航条css代黑色背景代码,基于CSS3实现的黑色个性导航菜单效果

    本文实例讲述了基于CSS3实现的黑色个性导航菜单效果.分享给大家供大家参考.具体如下: 黑色个性的CSS3导航菜单,竖直排列的菜单,基本原理与横向的区别并不大,适合学习CSS. 运行效果截图如下: 在 ...

  8. 餐厅菜单html代码,html5css3 3D餐厅菜单概念_订餐菜单选择工具

    特效描述:html5css3 3D餐厅菜单概念 订餐菜单选择工具.html5&css3 3D餐厅菜单概念 代码结构 1. 引入CSS 2. 引入JS 3. HTML代码 Gourmet Cas ...

  9. 纯css3炫酷科技感菜单

    下载地址 一款样式炫酷的旋转导航菜单,纯css3代码实现的炫酷科技感菜单,带css3旋转动画特效. dd:

最新文章

  1. 记一次shell脚本推后台stopped的问题
  2. 域名查询精灵V1.0 我写的软件,大家多多提建议
  3. 【Tools】MarkDown教程(七)-Typora详细教程
  4. 牛客多校4 - Harder Gcd Problem(构造+贪心)
  5. 中科院单细胞分析算法开发博士带你做单细胞转录组分析
  6. 香港年轻人买房压力有多大
  7. 移动端点击a链接出现蓝色背景问题解决
  8. 【laravel5.4】查询构造器对象与模型instance的互相换换
  9. python学习笔记--3.函数
  10. Laravel 使用 seeder 使用要点
  11. python读取EXCEL的方式
  12. 字节跳动 |go 后端开发工程师社招一二三四五面面经|2022
  13. python中如何解决类互相调用问题_两个.py之间类的相互调用问题
  14. python实现3d人物建模_一张图实现3D人脸建模!这是中科院博士生入选ECCV的新研究 | 开源...
  15. 泰坦尼克号生存预测(多种模型实现)python
  16. easyexcel表头和内容居中
  17. 数据库常用命令及关键字
  18. OpenWRT之UCI系统
  19. SQL查询某个时间段购买过商品的所有用户
  20. Android:高仿百度外卖、美团、淘点点二级联动效果!

热门文章

  1. java 字符串过长_idea java常量字符串过长解决办法
  2. python rpc_python与RPC服务
  3. java 反射获取泛型,用反射获取Java中的泛型参数的类型
  4. python怎么换行继续写脚本_用Python实现换行符转换的脚本的教程
  5. iis7 您无权使用所提供的凭据查看此目录或页面。_使用Spring Cloud和Docker构建微服务架构
  6. JAVA中this用法小结
  7. Java高并发编程:线程池
  8. angularjs组件间通讯_详解Angular2组件之间如何通信
  9. python数组去重函数_Python常用功能函数系列总结(一)
  10. android程序db文件用什么编辑器,在 Android Studio 上调试数据库 ( SQLite )