Css IE8 li:悬停,悬停在li项目之间的边距上触发?
第一个菜单项有一个下拉子菜单,应该显示在li:hover上。然而,由于某种原因,在任何一个li之间的空白处悬停会导致子菜单显示,我不知道为什么。它可以在Chrome和IE的兼容模式下工作,但不能在IE8上工作 下面是显示子菜单的CSS行:Css IE8 li:悬停,悬停在li项目之间的边距上触发?,css,internet-explorer-8,hover,Css,Internet Explorer 8,Hover,第一个菜单项有一个下拉子菜单,应该显示在li:hover上。然而,由于某种原因,在任何一个li之间的空白处悬停会导致子菜单显示,我不知道为什么。它可以在Chrome和IE的兼容模式下工作,但不能在IE8上工作 下面是显示子菜单的CSS行: .menu li:hover ul { display: block; position: absolute; margin: 0; padding: 0; } 对我来说,这意味着,无论何时你在安里徘徊,都要用下面的
.menu li:hover ul {
display: block;
position: absolute;
margin: 0;
padding: 0;
}
对我来说,这意味着,无论何时你在安里徘徊,都要用下面的风格来设计它的任何一个孩子。为什么这会在没有嵌套ul的li之间的利润率上触发
以下是菜单的完整CSS,以防万一:
.menu {
font-weight: normal;
font-size: 1.1em;
margin-top: 5px;
padding: 5px 0 0 0;
font-family: OswaldLight;
display: table;
margin: 0 auto;
}
.menu li {
list-style: none;
float: left;
margin-right: 10px;
}
.menu li a {
display: block;
text-decoration: none;
padding:5px;
color:@navbar-text;
background:@navbar;
text-decoration:none;
}
.menu li ul {
display: none;
background-color: @navbar;
}
.menu li ul li {
margin: 0;
}
.menu li a:hover {
color: @navbar-text-highlight;
background-color: @navbar-highlight;
}
.menu li:hover ul {
display: block;
position: absolute;
margin: 0;
padding: 0;
}
.menu li:hover li {
float: none;
}
.menu li:hover li a {
background-color: @navbar;
color: @navbar-text;
}
.menu li li a:hover {
color: @navbar-text-highlight;
background-color: @navbar-highlight;
}
这可能与ul的子菜单的宽度有关,我将进一步研究它,但很可能是IE中的宽度问题
更新:看来你已经解决了这个问题,因为有人想知道,问题是.menu类中的“display:table”。.menu类被分配给父UL,IE8不知道如何处理它。我删除了这一行,在父对象周围添加了一个父对象,并改为使用“display:table”,这似乎解决了问题。我使用“display:table”的原因是为了清除浮点数,但允许我使用“margin:0 auto”轻松将包含的浮点数居中,这似乎是我找到的最好的解决方案,可以使一个容器的浮子居中。我试着从你的