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

在线预览   源码下载

实现的代码。

htmll代码:

  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代码:

  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. }

基于CSS3飘带状3D菜单 菜单带小图标的更多相关文章

  1. CSS3飘带状3D菜单

    在线演示 本地下载

  2. jQuery垂直手风琴菜单 菜单项带小图标

    在线演示 本地下载

  3. 纯css3响应式3d翻转菜单

    前端开发whqet,csdn,王海庆,whqet,前端开发专家 周末快乐哈,今天来看一个纯CSS3实现的3d翻转菜单.3d响应式菜单,希望对大家有所帮助. 在线赞赏效果.在线编辑代码,或者下载收藏. ...

  4. 基于CSS3金属风格下拉菜单

    基于CSS3金属风格下拉菜单,css,金属风格,下拉菜单,CSS3导航. css3按钮:http://www.huiyi8.com/css3/anniu/

  5. 基于css3的文字3D翻转特效

    一款基于css3的文字3D翻转特效.这款特效当鼠标经过文字的时候3D翻转显示阴影.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="compo ...

  6. 精美的HTML5/CSS3表单 带小图标

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

  7. CSS3带小图标垂直下拉菜单

    在线演示 本地下载

  8. 基于CSS3制作的鼠标悬停动画菜单

    之前分享了好多款css3实现的鼠标悬停效果.今天再给大家带来一款基于CSS3制作的鼠标悬停动画菜单.这款菜单适用浏览器:360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界 ...

  9. Vue.js 实现的 3D Tab菜单

    今天给大家带来一款基于VueJS的3D Tab菜单,它跟我们之前分享的许多CSS3 Tab菜单不同的是,它可以随着鼠标移动呈现出3D立体的视觉效果,每个tab页面还可以通过CSS自定义封面照片.它的核 ...

随机推荐

  1. rpx

    rpx(responsive pixel): 可以根据屏幕宽度进行自适应.规定屏幕宽为750rpx.如在iPhone6上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = ...

  2. Atitit 项目的主体设计与结构文档 v5

    Atitit 项目的主体设计与结构文档 v5 1. 版本历史说明2 2. 功能大概说明2 3. 实现的目标3 3.1. cross device跨设备(pc 手机 平板)3 3.2. cross sc ...

  3. [na]ip数据包格式

    IP Datagram Structure 字段名 解释 版本 IP协议的版本,目前的IP协议版本号为4,下一代IP协议版本号为6. 首部长度 IP报头的长度.固定部分的长度(20字节)和可变部分的长 ...

  4. x86-64整数寄存器

  5. python常用运维脚本实例

    转载  file是一个类,使用file('file_name', 'r+')这种方式打开文件,返回一个file对象,以写模式打开文件不存在则会被创建.但是更推荐使用内置函数open()来打开一个文件 ...

  6. C#中自定义属性的例子

    自定义属性的作用 有时候我们需要给一个类或者类中的成员加上一些属性或者附加信息,让类或者变量的功能更明确可控制的细粒度更高,打个简单的比方:数据库里面的一张表,表中的每一个字段都有很多属性,如是否主键 ...

  7. andrdoid内置视频文件

    这种方法仅仅适合有内置存储的情况,至于和平分区的不在考虑之列 1 在vendor/sprd下新建一个目录built_in_video 里边放置要内置的视频文件及copy脚步 脚步例如以下:intern ...

  8. ASP.NET Core2.0 环境下MVC模式的支付宝PC网站支付接口-沙箱环境开发测试

    1.新建.NET Core web项目 2.Controllers-Models-Views 分三个大部分 3.下载安装最新sdk 官方的SDK以及Demo都还是.NET Framework的,根据官 ...

  9. 每日英语:The Power of Parents Who Say 'No'

    I grew up in an affluent area. Most kids owned multiple Cabbage Patch dolls and Gear bags and pairs ...

  10. 【ARM】2410裸机系列-按键查询式控制led

    开发环境   硬件平台:FS2410 主机:Ubuntu 12.04 LTS LED灯原理图 按键原理图 按键的接线资源 KSCAN0 -> GPE11    KSCAN1 -> GPG6 ...