我有一个外部样式表,里面有这个:
.box {
padding-left:30px;
background-color: #BBFF88;
border-width: 0;
overflow: hidden;
width: 400px;
height: 150px;
}
然后我有这个:
<div id="0" class="box" style="position: absolute; top: 20px; left: 20px;">
然后当我尝试访问 div 的宽度时:
alert(document.getElementById("0").style.width);
出现一个空白的警告框。 如何访问样式表中定义的宽度属性?
注意:div 以正确的宽度显示。
最佳答案
您应该使用 window.getComputedStyle
来获取该值。如果您要查找 CSS 值,我建议不要使用 offsetWidth
或 clientWidth
,因为它们返回的宽度包括填充和其他计算。
使用 getComputedStyle
,您的代码将是:
var e = document.getElementById('0');
var w = document.defaultView.getComputedStyle(e,null).getPropertyValue("width");
这方面的文档在 MDC 中给出:window.getComputedStyle
关于javascript - 如何访问使用外部样式表的 javascript 对象的样式属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1193409/