我在尝试用第二级设置下拉菜单样式时遇到了一个问题。Wordpress似乎也采用了同样的方法。子菜单类到任何和所有子菜单,我无法找到一种可靠的跨浏览器方式来定位第一级。子菜单,同时不点击2ne级别。子菜单。示例:
URL示例:http://getc.thefstopdesign.com/
查看“产品”菜单项下的问题。鞍座和;附件项目有一个自己的子菜单,我想飞到一边,但它正在与第一级子菜单CSS命中。
我从WordPress获得的基本菜单代码:
<ul id="main-menu-nav">
<li><a href="">one</a></li>
<li><a href="">two</a>
<ul id="sub-menu">
<li><a href="">sub-one</a></li>
<li><a href="">sub-two</a>
<ul class="sub-menu">
<li><a href="">sub-sub-one</a></li>
<li><a href="">sub-sub-two</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="">three</a>
我使用的基本下拉CSS:
#main-menu-nav li{
position: relative;
}
#main-menu-nav .sub-menu{
position: absolute;
left: -9999px;
}
#main-menu-nav li:hover .sub-menu{
left: 0;
}
如果第二级菜单可以审查不同的CSS类,那就太好了,但我找不到一种方法。
编辑:我解决了cCSS子选择器问题,一切正常。这是一个无关的问题,与我在CSS其他地方犯的错误有关<;我赢了;别让你厌烦。
我还实现了一种使用jQuery添加此功能的非常简单的方法。类似这样:
$(\'#menu-main-nav > li > ul\').addClass("sub-one");
$(\'#menu-main-nav > li > ul > li > ul\').addClass("sub-two");`
SO网友:w3uiguru
我已经浏览了您问题中的给定链接,并使用firebug添加和删除了一些css规则。请查看以下css规则。
#menu-main-nav .sub-menu {
/*left:-9999px;*/ // remove from line 648
}
#menu-main-nav .flyout-parent .sub-menu {
background: none repeat scroll 0 0 rgba(255, 232, 198, 0.95);
border-color: #AAAAAA;
border-style: solid;
border-width: 1px 1px 1px 0;
/*left:-9999px;*/ // remove from line 677
opacity: 0;
position: absolute;
width: 240px;
visibility:hidden; // add this on line 677
}
#menu-main-nav .flyout-parent:hover .sub-menu {
left: 100%;
opacity: 1;
top: -2px;
visibility: visible; // add this on line 691
}
#menu-main-nav li:hover .flyout-parent .sub-menu {
/*left:-9999px;*/ // remove from line 688
left:100%;
}
如果您有任何问题或需要更改,请留下评论。
注意:我刚刚使用firebug进行了检查。因此,请备份您的css,然后更改/更新您的css。