之前分享过一款非常酷的CSS3垂直下拉动画菜单,是多级菜单。今天我们来看一款也是用CSS3制作的垂直菜单,是仿Google Play的菜单,菜单项都带有可爱的小图标,可以先来看看效果图:
当然你可以在这里看到这款垂直菜单的DEMO演示。
接下来我们来一起分析一下这款Google Play垂直菜单的源代码,菜单主要由HTML代码和CSS代码组成。
先来看看HTML代码结构:
<nav>
<ul>
<li class="store"><span class="store-icon"></span><a href="#">Store</a></li>
<li class="movies"><span class="movies-icon"></span><a href="#">Movies</a></li>
<li class="music"><span class="music-icon"></span><a href="#">Music</a></li>
<li class="books"><span class="books-icon"></span><a href="#">Books</a></li>
<li class="magazines"><span class="magazines-icon"></span><a href="#">Magazines</a></li>
<li class="devices"><span class="devices-icon"></span><a href="#">Devices</a></li>
</ul>
</nav>
看起来结构是不是很清晰,一个ul li列表就搞定了。
然后来看看CSS代码:
nav {
background: rgba(245, 245, 245, 0.95);
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
-moz-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
-webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
width: 200px;
margin:30px 0 0 200px;
}
nav ul {
padding:;
margin:;
}
nav ul li {
list-style: none;
height: 50px;
}
nav ul li:hover {
width: 200px;
height: 50px;
}
nav ul li a {
position: absolute;
width: 140px;
height: 40px;
text-decoration: none;
color: #555;
padding: 10px 0 0 60px;
}
nav ul li a:hover {
color: #fff;
} .store {
background: #b3c833;
width: 50px;
height: 50px;
margin-bottom: px;
} .movies {
background: #ce5043;
width: 50px;
height: 50px;
margin-bottom: px;
} .music {
background: #fb8521;
width: 50px;
height: 50px;
margin-bottom: px;
} .books {
background: #1aa1e1;
width: 50px;
height: 50px;
margin-bottom: px;
} .magazines {
background: #5e5ca6;
width: 50px;
height: 50px;
margin-bottom: px;
} .devices {
background: #658092;
width: 50px;
height: 50px;
margin-bottom: px;
}
这里是定义了整个菜单的外观,包括排列、颜色、字体等样式,这里并没有用到CSS3的相关特性。
接下来是小图标的定义,这里利用了CSS3的data属性:
.store-icon {
position: absolute;
margin-left: 10px;
padding-top: 12px;
}
.store-icon:before {
width: 50px;
height: 50px;
margin-right: 30px;
content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAYAAACpSkzOAAAA0UlEQVRIx+XWUQ2DMBCA4UpAAhIqAQmTgIRJqIRKqAQkIAEJSKiDfy+3rFm6wpWyJeySvnC0H1euBAOYbwzzE6gUQAcEIPKKCbCFOToIsAkQAAd4uRaBWytokQVtpspnrj8EAaNUMn7I95L3R6EJWDfeX/YeLTQD0wbkyCxQam9P+3A5yF0OuhcmRGBtBQ2FCXPS7lEBDVVQclDdTrAeejusoQbqNFAClh7QZg+ssqI9W2gOQdIUe7qwDpJtWhRdp4aifPe0oYZq4x+g6/1unTkek/bCyLhDiUMAAAAASUVORK5CYII=");
}
这里我们只列出了一个菜单项的小图标定义,其它的也都类似。
这款垂直菜单就这样完成了,源代码已经上传,下载地址>>