overflow-x:可见; overflow-y:auto;不起作用 - 这个标准是否合规?

时间:2011-10-26 04:11:07

标签: css firefox internet-explorer-9

我在开发网页时遇到了问题。

Firefox或Internet Explorer都不会显示我对以下代码段的预期行为:

<div
    style="overflow-x: visible; overflow-y: auto; width: 200px; height: 200px; border: 1px solid #F00;">
    <div style="width: 300px; height: 300px; background-color: #0F0;">&nbsp;</div>
</div>

我所期望的是能够看到容器div的x侧溢出的内容,而不是底部溢出的内容(使用滚动条查看更多内容)。相反,我看到的是x滚动条和y滚动条。

注意:在firebug中检查计算出的样式属性会发现firefox正在使用overflow-x: auto;作为容器。

预计会出现这种情况吗?我理解在请求将滚动条置于我自己的内容之上时存在一些含糊之处(例如,我的水平内容将超过垂直滚动条,因此必须覆盖部分内容)。

我遇到符合标准的行为是什么?

1 个答案:

答案 0 :(得分:19)

好吧,我会被诅咒,我决定查看CSS(3)规范对此有何评论,it说:

  

'overflow-x'和'overflow-y'的计算值与   它们的指定值,除了某些与'visible'的组合   是不可能的:如果一个被指定为'可见'而另一个被指定为   '滚动'或'自动',然后'可见'设置为'自动'。

所以,简而言之,是的,我所经历的完全是预期的行为。

来源:CSS basic box model W3C Working Draft 9 August 2007(就在示例之后)