1. 程式人生 > >比較 width 與 offsetwidth 的區別

比較 width 與 offsetwidth 的區別

比較width 與 offsetWidth 的區別

1、offsetWidth > width
element.offsetWidth = element.style.width + element.style.padding + element.style.border;(不包括margin)

2、offsetWidth 屬性僅僅可讀,而style.width 是可寫的;
所以通常用 style.width用作進JavaScript中設定元素的寬度,而offsetWidth不可以。

3、offsetWidth 屬性返回值是整數,如果實際值是小數,會根據實際值進行四捨五入操作,返回處理後的整數。width=44.499px

;輸出結果為49
width=44.5px;輸出結果為45
而style.width的返回值是字串,並且帶有單位
width=44.499px;輸出結果為44.499px

4、style.width僅僅能返回以style方式定義的內部樣式表的width屬性值。
因此樣式寫在行內的時候<div id="box" style="width:100px">,用style.width或者offsetWidth都可以獲取元素的寬度;
如果寫在css樣式表中的時候,.box{width:100px;},此時只能用offsetWidth來獲取元素的寬度,而style.width所返回的值為空。