超酷 CSS3/HTML5 3D 飘带菜单实现教程
今天我们来介绍一款很有创意的CSS3/HTML5菜单,首先菜单是飘带形状的,看起来很优雅,这种菜单在个人博客中用的比较多,不仅干净利落,而且很具有个性化。另外,这款菜单在鼠标滑过菜单项时,将会出现3D的凸起效果,并且会改变菜单项的背景颜色,效果非常的酷,你可以从在线演示中查看这一效果。
你也可以在这里查看在线演示
下面我们来一起看看实现这款CSS3飘带菜单的具体过程以及源代码。源码主要由HTML代码和CSS代码组成,还比较简单。
HTML代码:
<div class=’ribbon’> <a href=’#'><span>Home</span></a> <a href=’#'><span>About</span></a> <a href=’#'><span>Services</span></a> <a href=’#'><span>Contact</span></a> </div>
看HTML代码非常简单,几个a标签就把菜单的结构描述清楚了,当然主要还是看CSS代码。
CSS代码:
.ribbon { display:inline-block; } .ribbon:after, .ribbon:before { margin-top:0.5em; content: “”; float:left; border:1.5em solid #fff; } .ribbon:after { border-right-color:transparent; } .ribbon:before { border-left-color:transparent; } .ribbon a:link, .ribbon a:visited { color:#000; text-decoration:none; float:left; height:3.5em; overflow:hidden; } .ribbon span { background:#fff; display:inline-block; line-height:3em; padding:0 1em; margin-top:0.5em; position:relative; -webkit-transition: background-color 0.2s, margin-top 0.2s; /* Saf3.2+, Chrome */ -moz-transition: background-color 0.2s, margin-top 0.2s; /* FF4+ */ -ms-transition: background-color 0.2s, margin-top 0.2s; /* IE10 */ -o-transition: background-color 0.2s, margin-top 0.2s; /* Opera 10.5+ */ transition: background-color 0.2s, margin-top 0.2s; } .ribbon a:hover span { background:#FFD204; margin-top:0; } .ribbon span:before { content: “”; position:absolute; top:3em; left:0; border-right:0.5em solid #9B8651; border-bottom:0.5em solid #fff; } .ribbon span:after { content: “”; position:absolute; top:3em; right:0; border-left:0.5em solid #9B8651; border-bottom:0.5em solid #fff; }
这里我们又一次应用了CSS3的:before和:after伪类对象,设置了菜单项前后的内容,并做了样式渲染,实现了鼠标滑过菜单项出现凸起的立体效果。
好了,就这么简单,你可以下载源代码去试试,或者修改一些参数看看其中的奥妙在哪里。源码下载>>