我正在使用ul
和li
创建一个纯css下拉列表,但是由于约束(之前的代码我无法更改),导航栏是div
并且它有一些链接(a
)在其中。
当我添加一个css下拉时,只要我在ul
区域上空盘旋,div就会展开(如我的jsfiddle和代码中所示)。我试图弄清楚是否有一种方法可以在div上显示下拉,这样就不会在div被删除时扩展div。
我尝试了不同的职位和z-index,但这些都没有。 我的模型代码:
<div style="background-color: yellow">
<a herf=#> One </a>
<a herf=#> Two </a>
<a herf=#> Three </a>
<a herf=#> Four </a>
<a herf=#> Five</a>
<ul>
<li><a href="#">dropdown</a>
<ul>
<li><a href="#">item1</a></li>
<li><a href="#">item2</a></li>
<li><a href="#">item3</a></li>
</ul>
</li>
</div>
<style>
ul{
padding: 0 20px;
list-style: none;
position: relative;
display: inline-block;
}
ul li:hover > ul {
display:block;
}
/* Fisrt Tier Dropdown */
ul li ul {
display:none;
}
</style>
http://jsfiddle.net/kox1b63q/1/
感谢您的建议
答案 0 :(得分:1)
也许这就是你需要的? http://jsfiddle.net/jasonslyvia/kox1b63q/2/
这里的关键点是了解position
属性。
答案 1 :(得分:1)
您可以绝对定位下拉列表:
ul li:hover > ul {
display:block;
position: absolute;
}