2013-05-16 40 views
1

在鼠标悬停时,菜单大小增加Internet Explorer 9.0.8。 我发现原因是元素divider正在使用属性overflow:hidden溢出:隐藏; IE浏览器在鼠标上的奇怪行为

为什么鼠标结束时会影响元素?

这里是代码的小提琴。我指出了第一个CSS风格,问题在哪里。 http://jsfiddle.net/EF9Eg/4/

这是有问题的风格:

.floatingMenu li.divider{ 
    height: 1px; 
    margin: 9px 1px; 
    overflow:hidden; /*PROBLEM INTERNET EXPLORER*/ 
    background-color: #E5E5E5; 
    border-bottom: 1px solid #FFF; 
} 

如果我们摆脱overflow:hidden;一切运作良好。

+0

你的小提琴在ie9中似乎对我很好,但一个想法是在你的非分隔板上放一个不同的类,只是为这些lis而不是所有的悬停事件 – Pete

+0

@Pete它不能很好地工作当你将鼠标移动到菜单上时。它变得更大。 – Alvaro

+0

你有没有试过把'zoom:1'给李氏? – mario595

回答

1

它的发生,将根据关闭的100%宽度的IE浏览器的一部分,什么是DIV界定大小的另一种解释似乎从.floatingMenu里100%:当您删除宽度

0

问题就消失了。

没有设置或最大宽度的div或ul中的100%宽度可以被解释为它所嵌套的最大div的宽度,这似乎是正在发生的事情。如果你删除了100%的宽度,或者将一组或最大宽度应用于ul,它会将其限制为该分层宽度。

这可能部分地也是应用于ul的绝对定位的一个因素,因为它可能会忽略相对定位的div高于其自身的宽度。

我相信this解释了进一步发生的事情。

+0

我知道,但是...为什么它会让鼠标在父母身上变得更大?有人看到它下面的逻辑吗? – Alvaro

相关问题