我正在开展一个项目,我们正在抓取一个网站并提取内容,因此我无法控制div或lis的结构。
我遇到的问题是菜单上的下拉菜单没有与父菜单项对齐。我正在寻找一些有助于解决此问题的css / jquery here's a link to the fiddle: http://jsfiddle.net/9gQCH/3/
CSS& HTML
#item1, #item2 {
background-color:#efefef;
display:inline;
font-size:14px;
margin-right:3px;
padding:5px;
}
.Submenu {
display: none;
padding: 4px;
margin-top:18px;
background-repeat:no-repeat;
}
.Menu li:hover .Submenu{
background-color:orange;
display:inline;
color: black;
padding: 3px 5px;
position:absolute;
}
<div class="Menu">
<li id="item2">
High level Item 1
<div class="Submenu">
<div>
Nested Item 1
</div>
<div>
Nested Item 2
</div>
</div>
</li>
<li id="item2">
High level Item 2
<div class="Submenu">
<div>
Nested Item 3
</div>
<div>
Nested Item 4
</div>
</div>
</li>
</div>
答案 0 :(得分:1)
使用JQuery
$(".Submenu").each(function(){
$(this).css("left",$(this).parent().offset().left);
});
答案 1 :(得分:0)
你不需要jQuery。只需将其添加到您的CSS:
.Menu li { position: relative; }
更新(将left: 0;
添加到您的.Submenu
课程):
.Menu li:hover .Submenu{
background-color:orange;
display:inline;
color: black;
padding: 3px 5px;
position:absolute;
left:0; // <------
}
(如果您认为有必要,还可以添加top
属性)