InputElement 宽度返回空字符串

Lat*_*han 3 html css dart

我的页面上有一个 InputElement,我试图访问它的宽度,以便我可以使其他元素具有相同的大小。

我的 InputElement 是顶级的,所以我有:

InputElement nameBox = querySelector("#nameBox");
Run Code Online (Sandbox Code Playgroud)

后来在main(),我有:

var width = querySelector("#nameBox").style.width;
Run Code Online (Sandbox Code Playgroud)

在此行之后,width总是""而不是预期的"149px"。但是,分配给它stlye.width会更新宽度......

知道这是为什么吗?我知道 Dartmain()在加载 DOM 之前不会运行,所以不确定为什么这不起作用。顺便说一句,宽度默认为 149px——我没有改变它。

Ale*_*uin 5

.style.widthstyle不返回计算出的宽度,而是返回分配给元素属性 ( ) 的宽度<input style="width:200px"/>。如果你想获得真实的宽度,你可以使用Element.clientWidth