Многоуровневое выпадающее меню
Многоуровневое выпадающее меню на чистом CSS3 основанное, как принято, на UL - LI. Подменю будут появляться не при наведении курсора на пункт меню, а при клике.
HTML
<div class="example">
<ul id="nav">
<li><a href="https://pcvector.net">Главная</a></li>
<li><a class="fly" href="#">Статьи</a>
<ul class="dd">
<li><a href="https://pcvector.net">HTML / CSS</a></li>
<li><a class="fly" href="#">JS / jQuery</a>
<ul>
<li><a href="https://pcvector.net">jQuery</a></li>
<li><a href="https://pcvector.net">JS</a></li>
</ul>
</li>
<li><a href="https://pcvector.net">PHP</a></li>
<li><a href="https://pcvector.net">MySQL</a></li>
<li><a href="https://pcvector.net">XSLT</a></li>
<li><a href="https://pcvector.net">Ajax</a></li>
</ul>
</li>
<li><a class="fly" href="#">Ресурсы</a>
<ul class="dd">
<li><a class="fly" href="#">Категория</a>
<ul>
<li><a href="https://pcvector.net">PHP</a></li>
<li><a href="https://pcvector.net">MySQL</a></li>
<li><a class="fly" href="#">Меню1</a>
<ul>
<li><a href="#">Меню1</a></li>
<li><a href="#">Меню2</a></li>
<li><a class="fly" href="#">Меню3</a>
<ul>
<li><a href="#">Меню31</a></li>
<li><a href="#">Меню32</a></li>
<li><a href="#">Меню33</a></li>
<li><a href="#">Меню34</a></li>
</ul>
</li>
<li><a href="#">Меню4</a></li>
</ul>
</li>
<li><a href="https://pcvector.net">Ajax</a></li>
</ul>
</li>
<li><a class="fly" href="#">Теги</a>
<ul>
<li><a href="https://pcvector.net">капча</a></li>
<li><a href="https://pcvector.net">галерея</a></li>
<li><a href="https://pcvector.net">анимация</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="https://pcvector.net">О нас</a></li>
</ul>
</div>
CSS
Основной код:
/* main menu styles */
#nav,#nav ul {
background-image:url(../images/tr75.png);
list-style:none;
margin:0;
padding:0;
}
#nav {
height:41px;
padding-left:5px;
padding-top:5px;
position:relative;
z-index:2;
}
#nav ul {
left:-9999px;
position:absolute;
top:37px;
width:auto;
}
#nav ul ul {
left:-9999px;
position:absolute;
top:0;
width:auto;
}
#nav li {
float:left;
margin-right:5px;
position:relative;
}
#nav li a {
background:#c1c1bf;
color:#000;
display:block;
float:left;
font-size:16px;
padding:8px 10px;
text-decoration:none;
}
#nav > li > a {
-moz-border-radius:6px;
-webkit-border-radius:6px;
-o-border-radius:6px;
border-radius:6px;
overflow:hidden;
}
#nav li a.fly {
background:#c1c1bf url(../images/arrow.gif) no-repeat right center;
padding-right:15px;
}
#nav ul li {
margin:0;
}
#nav ul li a {
width:120px;
}
#nav ul li a.fly {
padding-right:10px;
}
/*hover styles*/
#nav li:hover > a {
background-color:#858180;
color:#fff;
}
/*focus styles*/
#nav li a:focus {
outline-width:0;
}
/*popups*/
#nav li a:active + ul.dd,#nav li a:focus + ul.dd,#nav li ul.dd:hover {
left:0;
}
#nav ul.dd li a:active + ul,#nav ul.dd li a:focus + ul,#nav ul.dd li ul:hover {
left:140px;
}
И три изображения для оформления меню. И всё.
Ссылки