javascript - 为什么 IE 和 Firefox 对 div 返回不同的溢出尺寸?

标签 javascript css internet-explorer firefox dom

我有一个固定大小为 100px 的 div。如果 div 中的文本正常(没有单词长到足以完全填充一行),则 scrollWidthscrollHeight 工作正常。然而,如果有任何文本的一个单词渲染宽度超过 100 像素,就会导致问题。

假设文本类似于“ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890”:那么 Firefox 返回错误的 scrollWidth (在本例中为 100,即使 div 也与实际宽度相同)已经溢出了)。但是,IE 给出了正确的 scrollWidth (本例中为 180)。

请帮助我在 Firefox 中获取正确的 scrollWidth。抱歉,如果我的问题看起来含糊不清。

最佳答案

确保您的 div 已设置 overflow:hiddenoverflow:auto 样式。如果是 overflow:visible (默认),那么 FF 不会计算更大的 scrollWidth 因为 没有什么可以滚动(文本都是渲染)。

您在 IE 中观察到的行为实际上是由于 a bug in that browser's implementation 溢出:可见

关于javascript - 为什么 IE 和 Firefox 对 div 返回不同的溢出尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1332185/

相关文章:

javascript - 标准 JS GUI 控件库

css - 在 css 中翻转分隔图像?

html - 如何使内容水平显示在页面的分隔部分?

html - 固定位置 div 在大屏幕上的可扩展放置

html - 添加搜索核心结果 Web 部件后,IE 中的 mailto 中断

javascript - 使用 Showdown.js 渲染 WMD 的浏览器相关问题?

html - 下拉菜单中的链接在 IE 中不起作用

javascript - setState 函数未定义

javascript - 使用 AJAX 将变量传递给 php 脚本

javascript - 在 Nodejs 中加密并使用 WebCrypto API 在客户端解密