Html ie8中的下拉菜单混乱
这是我的下拉菜单代码。除了ie8,在所有浏览器中都可以。我不明白这个问题。我很高兴知道你的意见Html ie8中的下拉菜单混乱,html,css,drop-down-menu,menu,internet-explorer-8,Html,Css,Drop Down Menu,Menu,Internet Explorer 8,这是我的下拉菜单代码。除了ie8,在所有浏览器中都可以。我不明白这个问题。我很高兴知道你的意见 <ul id="nav" class="nav_wrapper"> <li id="menu_3"> <a href="#"> A </a> <ul class="sub_menu" id="sub_3" style="display: none"> <li id="menu_5"><a hr
<ul id="nav" class="nav_wrapper">
<li id="menu_3">
<a href="#"> A </a>
<ul class="sub_menu" id="sub_3" style="display: none">
<li id="menu_5"><a href="main.php?pages=5"> 1 </a></li>
<li id="menu_6"><a href="main.php?pages=6"> 2 </a></li>
<li id="menu_7"><a href="main.php?pages=7"> 3 </a></li>
</ul>
</li>
<li id="menu_18"><a href="main.php?pages=18"> B </a></li>
<li id="menu_19">
<a href="#"> C </a>
<ul class="sub_menu" id="sub_19" style="display: none">
<li id="menu_20"><a href="main.php?pages=20"> 1 </a></li>
<li id="menu_21"><a href="main.php?pages=21"> 2 </a></li>
</ul>
</li>
</ul>
问题是在ie8中,主菜单从右向左级联。子菜单不在主菜单项下的正确位置。
看看这个。您需要做的是从以下类中删除float:right:
#nav > li {
display: inline;
float: right;
position: relative;}
您需要将.nav_包装类更改为:
.nav_wrapper {
left: 0px;
margin-top: 7px;
padding: 0px;
right: 0px;
Z-index:10;
float:right;}
关于子菜单。您应该将position:relative放在主导航的li中,并将position:absolute放在子菜单中,然后相应地放在left/right/top/bottom中。我没有在小提琴中设置子菜单,只是想让您知道。您能告诉我们问题出在哪里吗?对不起,我已经解释过了。问题是在ie8中,主菜单从右向左级联。子菜单不在主菜单项下的正确位置。通过快速扫描,我可以看到在子菜单上,您使用的是“位置固定”和“向右浮动”。这行不通。你可能想使用绝对位置和无浮动。我同意比利莫特。。。此外,为了安全起见,需要添加z-index以使其高于内容…是的,这很奇怪,但在ie8中效果更好:p这是ie8中的外观:谢谢你的回答,但它没有解决它。主菜单仍然不是内联的,它是级联的。如果你可以为页面本身提供链接,那么它会很有帮助,因为你可以在小提琴中看到菜单项是内联的,所以我猜不是这个css造成了问题。如果你不能提供真正的链接,只需上传到测试站点。
.nav_wrapper {
left: 0px;
margin-top: 7px;
padding: 0px;
right: 0px;
Z-index:10;
float:right;}