1.元素未設置寬度值。
2.元素設置了寬度值,但,設置在內聯或外聯樣式表中,而非內嵌式的。比如
css代碼
p{
background:pink;
}
html代碼
<p id="p1">aaaaaaaaaa</p>
PS:雖然這種方式取不到寬度值。但卻可以設置元素的寬度值。比如:設置p元素寬度爲200px:
document.getElementById("p1").style.width ="1000px";
綜上,所以,只有將元素的樣式設置成內嵌式的,纔可以通過 document.getElementById("id").style.width 來獲取寬度值;
<p id="p1" style="width:166px;">dddddddddd</p>
var w = document.getElementById("p1").style.width;
alert(w);
執行後輸出結果爲166px
那麼,對於沒有設置寬度的元素、亦或CSS樣式非內嵌式的,js原生寫法可以通過offsetWidht來獲取寬度
即:document.getElementById("#p1").offsetWidth;
ps:對於設置了CSS樣式的元素(內聯、內嵌、外聯)offsetWidth 也都可以獲得值