这是一个关于我的前一个问题的复述,更多的信息是基于进一步的实验和研究。
这是一个在IE、Safari和Chrome中工作的模型,在Firefox 22中失败。
我有以下属性的下拉导航:
问题:显示:仅在火狐中,表格单元格删除了子菜单对顶级LI宽度的感知。它在我尝试过的其他每一个浏览器中都能工作(除了IE7,它以一种可以接受的方式中断)。
移除显示:表格单元格修复了问题,但带回了一个较早的问题,即当父菜单的高度不同时,子菜单出现在不同的高度。
我要找的是:
非常感谢您的帮助和建议。
HTML
<div id="topnavblock">
<ul id="topnav">
<li><a href="#">Here is a top-level menu item</a>
<ul>
<ul class="navwrap3">
<li class="navwrap1">
<ul class="navwrap2">
<li><a href="#">Menu item 1</a></li>
<ul>
<li><a href="#">Sub-menu 2</a></li>
<li><a href="#">Sub-menu 2</a>
<ul>
<li>Third level nested menu</li>
</ul>
</li>
<li><a href="#">Sub-menu 2</a></li>
</ul>
</li>
<li><a href="#">Sub-menu 3</a></li>
</ul><!--end navwrap2-->
</li> <!--end navwrap1-->
</ul><!--end navwrap3-->
</ul>
</li>
<li><a href="#">Here is a top-level menu item</a></li>
</ul>
</div>CSS
#topnavblock {
width:100%;
position:relative;
display:table;
}
#topnav {
display:table-row;
}
#topnav > li {
max-width:100px;
display:table-cell;
vertical-align: middle;
border-right: 1px solid yellow;
}
ul#topnav li .navwrap1 {
background: yellow;
width: 210px;
position: relative;
}
ul#topnav li .navwrap2 {
background:grey;
}
ul#topnav > li > ul {
border-right: 3px solid red;
}
ul#topnav ul .navwrap3 {
border-left:3px solid green;
padding-top:60px;
}
ul#topnav .navwrap2 li {
float: none;
background:lightgreen;
width:100%;
}
ul#topnav li:hover ul {
visibility: visible;
}发布于 2014-04-08 12:27:51
<li><a href="#">Menu item 1</a></li>行不应以</li>标记结尾。
https://stackoverflow.com/questions/17573187
复制相似问题