CSS Jquery垂直导航菜单带有水平子菜单 [英] CSS Jquery vertical navigation menu with horizontal submenus
本文介绍了CSS Jquery垂直导航菜单带有水平子菜单的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想建立一个如下的导览选单:
I'd like to create a navigation menu like this:
|main-item1|
|main-item2| |sub-item1| |sub-item2| |sub-item3|
|main-item3|
|main-item4|
我现在看到的是:
|main-item1|
|main-item2|
|sub-item1| |sub-item2| |sub-item3| |main-item3| |main-item4|
我在stackoverflow上发现了这样的另一个问题,但是我无法适应代码。
I've found another question like this here on stackoverflow, but I couldn't manage to adapt the code.
我的HTML代码是:
<div>
<nav>
<ul id="mainmenu">
<li><a href="chi_siamo">Chi siamo</a></li>
<li><a href="servizi">Servizi</a>
<ul class="submenu">
<li>
<a href="speciale">speciale</a>
</li>
<li>
<a href="#">privati</a>
</li>
<li>
<a href="">aziende</a>
</li>
<li>
<a href="">cerimonie</a>
</li>
<li>
<a href="">consulenza</a>
</li>
</ul>
</li>
<li><a href="location">Location</a></li>
<li><a href="contatti">contatti</a></li>
<li class="last"><a href="partner">partner</a></li>
</ul>
</nav>
</div>
这是css:
#mainmenu {
position: fixed;
left: 20px;
top: 50%;
z-index: 999999;
margin-top:-200px;
}
#mainmenu li {
height: 40px;
margin: 5px;
position: relative;
}
#mainmenu a {
background: none repeat scroll 0 0 #333;
color: #fff;
display: block;
font-family: Folio;
font-size: 30px;
padding: 2px 15px;
text-decoration: none;
text-transform: uppercase;
width: 160px;
height: 40px;
/*background: url(Images/dotnav.png) 0 100% no-repeat;*/
/*text-indent: -10000px;*/
overflow: hidden;
}
#mainmenu a:hover,
#mainmenu li.active a {
background-position: 0 0;
}
.submenu
{
list-style-type: none;
position:relative;
float:left;
}
.submenu li
{
display: inline;
float:left;
position:relative
}
,也是因为我想在悬停时添加一些效果,但我认为最好是将所有内容与CSS对齐。
It would be ok to use some jquery plugin, also because I'd like to add some effect on hovering, but I thought it was better to align everything with css first.
感谢
推荐答案
这是你可能想要的:
css:
#mainmenu {
position: fixed;
left: 20px;
top: 50%;
z-index: 999999;
margin-top:-200px;
}
#mainmenu li {
height: 40px;
margin: 5px;
position: relative;
}
#mainmenu a {
background: none repeat scroll 0 0 #333;
color: #fff;
display: block;
font-family: Folio;
font-size: 30px;
padding: 2px 15px;
text-decoration: none;
text-transform: uppercase;
width: 160px;
height: 40px;
/*background: url(Images/dotnav.png) 0 100% no-repeat;*/
/*text-indent: -10000px;*/
overflow: hidden;
}
#mainmenu a:hover,
#mainmenu li.active a {
background-position: 0 0;
}
.submenu
{
list-style-type: none;
position:relative;
float:left;
}
.submenu li
{
display: inline;
float:left;
position:relative;
}
#mainmenu .submenu li{
margin:0px;
}
和html
<div>
<nav>
<ul id="mainmenu">
<li><a href="chi_siamo">Chi siamo</a></li>
<li><a href="servizi" style="float:left">Servizi</a>
<ul class="submenu">
<li>
<a href="speciale">speciale</a>
</li>
<li>
<a href="#">privati</a>
</li>
<li>
<a href="">aziende</a>
</li>
<li>
<a href="">cerimonie</a>
</li>
<li>
<a href="">consulenza</a>
</li>
</ul>
</li>
<li style="clear:both;"><a href="location">Location</a></li>
<li><a href="contatti">contatti</a></li>
<li class="last"><a href="partner">partner</a></li>
</ul>
</nav>
</div>
在html中,我在servizi中添加了float left,并在css中添加了:
In html I added at "servizi" float left and in css i added :
#mainmenu .submenu li{
margin:0px;
}
现在他们处于同一级别。
So they are now at the same level.
这篇关于CSS Jquery垂直导航菜单带有水平子菜单的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文