问题标签 [offsetwidth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6184 浏览

javascript - DOM元素宽度可以是非整数吗?

我有一个页面,其 div 元素由 JavaScript 对齐。JavaScript 只需检查一组 div 元素以找到最大offsetWidth,然后将所有 div 元素的宽度设置为最大offsetWidth。它在大多数浏览器和语言环境中都能完美运行,但在 Mac 上的 Firefox 中的法语 - 法国失败。在这种情况下, div 的内容会换行。

对于上面的 HTML,下面的代码报告“79”。

但在代码下方报告“79.1333px”。

79.1333 和 79 之间的间隙使不正确的宽度设置为内联样式。

我曾经认为offsetWidthwidth应该总是整数。有什么方法可以正确地使offsetWidth 变圆吗?

0 投票
4 回答
1758 浏览

internet-explorer-6 - IE6 的 offsetWidth 或 CSS 表达式问题

我需要将文本框的宽度设置为其父级的 80%。所以首先我用

但如果input是 的子级,则无法正确渲染td。所以,我使用了 Css 表达式

它在除 IE 6 之外的所有浏览器中都可以正常工作。谁能帮助我,我哪里出错了?我知道IE 6中允许表达式。那么,是使用css表达式还是做offsetWidth的问题。

提前致谢。

0 投票
2 回答
5612 浏览

javascript - IE 8 Quirks 与标准检索 offsetHeight/offsetWidth

我正在将我的应用程序转换为使用 XHTML 严格模式(之前它没有 DOCTYPE)。但是,我注意到在获取 offsetHeight/offsetWidth 时显着下降。这在具有大量 DOM 元素的页面上非常明显,比如说一个 1 列乘 800 行的表格,单元格只有一段文本。访问该表中的每个后代元素以获取它们的偏移尺寸比 IE 在 Quirks 模式下呈现页面时要慢得多。为什么会这样?有人知道帮助 IE 计算这些 offsetValues 的技巧吗?

0 投票
3 回答
1741 浏览

javascript - Safari 返回错误的宽度值

嗨,我有一个带有 div 的表,该表有 2 列,均为 50% 在大多数浏览器中,我可以使用 offsetWidth 来获取文章的宽度。但在 Safari 中,宽度小于或大于应有的宽度。任何帮助将不胜感激。问候理查德

0 投票
1 回答
1587 浏览

css - 为什么 offsetHeight 和 offsetWidth 间歇性地不准确?

我一直注意到,至少在 Firefox 中(尚未在其他浏览器中进行过广泛测试),a 上的 offsetHeight 和 offsetWidth 属性<div>可能相差一个像素。(是的,我已经考虑了边框、填充和边距。)看看这个截图,看看我的意思:

这里带边框的总高度为 46px,但如 Firebug 所示,offsetHeight 仅为 45px

所以这里带边框的总实际高度是 46px,但正如 Firebug 显示的那样,offsetHeight 是 47px(无边框为 45px)。为什么会出现差异?是浏览器故障吗?我应该提到有<div>问题的地方已经float: left设置好了,它里面也有一些类似floated的内容: left

0 投票
1 回答
398 浏览

css - 当 Firefox 4 报告表格单元格的 offsetWidth 不一致时,解决方法是什么

我有一个甘特图类型的 web 控件:一个 html 单元格表(例如,一个单元格代表一天)和一些绝对定位的 div 代表条形 - div 的父元素是适当的起始 TD。我设置了 div 的宽度,以便它们覆盖适当的天数。宽度是通过对 div 覆盖的单元格的 offsetWidth 值求和来计算的。

这在 IE7、Chrome 和 Opera(我认为在 Firefox 2 中)中可以正常工作,但在 Firefox 4中则不行。div 的长度有时太短有时太长。从问题的调查来看,这似乎与类似于此处描述的亚像素问题有关

我所看到的(参见下面的源 html)是我的 100% 宽的表(它的 offsetWidth 报告为 1311 px)被分成 30 个单元格,平均应该占用 43.7 px。显然它必须使用整数,但 Firefox 4 报告每个单元格的 offsetWidth = 44 像素,因此对于覆盖每个单元格的 div,它的 offsetWidth 为 1320 像素(大 9 像素)。显然,表格保留了 1311 像素的宽度,表明单元格 offsetWidth 可能报告为 44,而在某些情况下,单元格物理占用 43 像素

与 chrome、opera 和 IE7 相比,单元格的 offsetWidth 是 44 和 43 像素的混合,但加起来是正确的最终宽度 1311。

问题是如何解决 Firefox4 的这种行为,以确保我的 div 具有正确的长度。

我还没有在其他版本的 IE 上测试过

这是该问题的简化工作示例:

0 投票
0 回答
818 浏览

javascript - ie7 clientWidth和clientHeight问题

我试图像这样获得 offsetWidth 和 offsetHeight 属性:

不幸的是,只有当我在 window.onload 上调用时,IE7 上的 offsetWidth 才有效,否则它只返回 0。有没有人知道解决这个问题的任何其他方法,因为我需要立即使用“somediv”,就像在真正的浏览器中一样。

0 投票
2 回答
2709 浏览

javascript - 有效测试 DOM 元素 offsetHeight 和 offsetWidth,无需附加

我需要测试元素的 offsetWidth 和 offsetHeight。目前,附加元素,然后测试 offsetWidth 和 Height,然后删除元素。

它看起来像这样:

但这非常慢!

编辑:完整代码:

0 投票
1 回答
10781 浏览

javascript - offsetHeight 和 offsetWidth 在第一个 onclick 事件上计算不正确,而不是第二个

我编写了以下脚本来显示隐藏元素,然后将其位置固定到页面的中心。

当 onclick 事件调用此函数时,offsetHeight 和 offsetWidth 计算不正确,因此无法正确居中元素。如果我再次单击 onclick 元素,则 offsetHeight 和 offsetWidth 计算正确。

我已经尝试以我能想象的各种方式改变顺序,这让我发疯了!很感谢任何形式的帮助!

0 投票
0 回答
5813 浏览

javascript - Javascript 表格列宽

我有一个需要匹配的标题表和数据表。目前,我正在尝试抓取每个表格的第一行,获取这些单元格,循环遍历每个单元格,确定哪个宽度最长,并根据该宽度设置另一个单元格的宽度。但是,根本没有任何变化。代码在下面,并在准备好的文档上运行。帮助?