Internet Explorer 9 的神奇扩展 div

12

这个问题让我很困惑。如果您使用Internet Explorer 9查看此jsfiddle,您会发现一个div在悬停时会自动展开,无需JavaScript!无论如何,我使用W3C验证器检查了CSS,并显示了几个错误,但据我所知它们是由于供应商特定属性引起的,或者至少我没有找到语法错误等。我怀疑这个特定的类可能对IE 9来说太过复杂:

div.gridViewScrollerH
{
    width: 916px;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-x: auto;
    -ms-overflow-y: hidden;
}

有人之前遇到过这个问题吗?有什么想法吗?谢谢。


1
IE9不需要-ms-overflow-x-ms-overflow-y。它们分别是overflow-xoverflow-y的别名,因此如果您已经使用未加前缀的版本,则没有理由使用它们(如果您这样做,它们将不起作用)。 - BoltClock
这更像是自动溢出与隐藏溢出的问题。我认为有些值的组合是行不通的。 - BoltClock
@BoltClock 是的,我最初没有那些行。当我开始变得绝望时,我添加了这些行 :p - JayPea
3个回答

19

只需向该类添加display: inline-block;样式即可。

div.gridViewScrollerH
{
    display: inline-block;
    width: 916px;
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-x: auto;
    -ms-overflow-y: hidden;
}

抱歉,我是指 display: inline-block。我已经修正了答案。谢谢 BoltClock。 - Varon
1
display:inline-block 对我也起作用了。在我的情况下,只有 overflow:auto 这个属性导致了 IE9 的“神奇扩展 div”错误。 - rplantiko
1
更新,它只适用于固定宽度,如果您没有定义宽度,它将无法工作。 - András Ottó

2

此问题仅适用于IE9浏览器。 将

标签的overflow样式更改为scroll,而不是应用自动滚动。


0
请尝试在类中添加min-height: 0%。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接