CSS3 飘带菜单 超酷3D CSS3菜单

之前我们分享过不少漂亮的CSS3菜单CSS3/jQuery创意盒子动画菜单CSS3垂直菜单 菜单有立体动画视觉CSS3多级下拉菜单 弹性展开下拉动画。今天要分享的这款CSS3菜单非常特别,菜单是呈飘带状的,鼠标滑过菜单项时,菜单项会凸显出来,表现的非常立体动感。

css3-3d-ribbon-menu

在线演示源码下载

下面我们来一起看看实现这款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伪类对象,设置了菜单项前后的内容,并做了样式渲染,实现了鼠标滑过菜单项出现凸起的立体效果。

好了,就这么简单,你可以下载源代码去试试,或者修改一些参数看看其中的奥妙在哪里。

在线演示源码下载

热门推荐