我创建了一个简单的下拉菜单,但问题是主<li>
父级在下拉效果后推送其兄弟姐妹。
因此,如果您将鼠标悬停在Drop 1
上,然后Link 3
然后link 6
,Drop 2
将被推到右侧,因为Drop 1
li
将增加宽度。
如何防止这种情况?
答案 0 :(得分:1)
您需要对子元素使用position: absolute;
,并根据您的要求设置下拉位置。
.menu > li > ul {
position: absolute;
}
注意:如果你愿意,这可以用纯CSS实现 平滑下拉的问题,您可以使用
CSS transitions
答案 1 :(得分:0)
答案 2 :(得分:0)
点击此处DEMO http://jsfiddle.net/ksXNL/3/
ul {
padding: 0;
margin: 0;
}
ul.menu {
display: table;
float:left;
}
.menu li {
float:left;
display:inline;
list-style: none;
width:100px;
}
.menu li a{
background:red;
}
.menu li ul{
position:relative;
left:0;
top:0px;
z-index:10;
width:100%;
}
.menu li li{
position:relative;
left:0;
top:0px;
list-style: none;
padding-left: 10px;
width: 100%;
z-index:10;
}
.menu li ul li a{
background:green;
}