我的页面上有一个InputElement,我正在尝试访问它的宽度,以便我可以使其他元素的大小相同。
我的InputElement是顶级的,所以我有:
InputElement nameBox = querySelector("#nameBox");
稍后在main()
,我有:
var width = querySelector("#nameBox").style.width;
在此行之后,width
始终为""
而不是预期的"149px"
。但是,分配给stlye.width
会更新宽度...
知道为什么会这样吗?我知道Dart的main()
在DOM加载之前不会运行,因此不确定为什么这不起作用。
顺便说一下,默认宽度是149px - 我没有改变它。
答案 0 :(得分:4)
.style.width
不会返回计算出的宽度,而是返回分配给元素style
属性的宽度(<input style="width:200px"/>
)。如果您想获得实际宽度,可以使用Element.clientWidth。