13

我的表单上有一个元素,如下所示:

<div style="overflow-y:auto;overflow-x:hidden;height:100%;width:100%">

在 IE7 页面首次呈现时,没有滚动条。但是,如果我调整页面大小(即使只有 1 个像素),滚动条也会正确显示。

有什么办法可以让滚动条在页面首次显示时正确显示吗?

4

6 回答 6

11

Set overflow-y to "scroll" if you always want a scrollbar.

于 2009-08-13T17:21:46.490 回答
6

这就是来自 IE6 和 IE7 中的 hasLayout 错误的问题。它会影响 IE 呈现页面的方式。为了摆脱这个问题,你应该考虑阅读这个关于hasLayout 行为及其 hacks的精彩页面。还有微软官方的 hasLayout 专用页面

建议的技巧height: 0;取决于zoom: 1;您要定位的 IE 版本和元素的类型。

于 2011-02-16T00:24:48.217 回答
2

我使用了溢出:滚动,它解决了加载时滚动条消失的问题。我的表格是动态创建的,并且在页面加载时应该自动滚动,因为我有足够的数据可以开始。

我不必进行任何其他更改。现在它适用于所有三种浏览器 IE7、IE8 和 FF。

于 2011-04-12T17:53:03.013 回答
2

您应该将 margin-right: 20px 添加到您的样式中,因此滚动条将有足够的位置显示。

于 2009-09-19T22:41:06.593 回答
1

尝试Internet Explorer 9看看您当前的脚本是否在那里工作。很可能它确实在那里工作,如果是这样,你可能会重新考虑你的内心渴望让它与以前版本的 Internet Explorer (如 7 等)兼容

随着 Chrome 和 FireFox 将观众从 IE 抢走,我预测这些问题将被淘汰只是时间问题......

于 2011-02-16T18:55:36.287 回答
1

尝试绝对宽度和高度,在调整大小时,IE7 可能会在您调整到页面大小时自行计算尺寸,而在页面加载时它不是...

于 2011-04-06T16:05:06.207 回答