javascript-我可以轻松地“设置”元素的offsetWidth吗?
作者:互联网
注意:我知道offsetWidth是只读的
我正在尝试使弹出的“ div”覆盖宽度完全相同的tr元素.
但是,我对如何设置div的宽度感到困惑,因为它的offsetWidth与tr完全相同.
计算结果如下:
div.width = tr.offsetWidth - div.paddingWidth - div.marginWidth
但是肯定有更好的方法(因为我只能想到以两个为一组来获取填充和边距偏移量…)
具体来说,如果可能,我想为YUI 2提供答案.
解决方法:
如果将div的边距和边距清零,则应执行以下操作:
YAHOO.util.Dom.setStyle(div, 'width', tr.offsetWidth + 'px');
根据您在div和tr上处理边框的方式,您可能需要分配tr.clientWidth.
然后,您可以根据需要在div的父/子元素上设置任何边距/填充,以实现所需的外观.
确定您要执行的操作的关键是确切地了解clientWidth
and offsetWidth
measure,并且元素的CSS宽度是其内容区域,并且不包括在其上定义的任何边距,边框和填充(see the W3C box model here).
您可以通过从
标签:dhtml,width,javascript 来源: https://codeday.me/bug/20191208/2093845.html