2014-09-22 56 views
1

根據框模型,元素的總寬度是=內容寬度+邊距+填充+邊框。CSS - 框模型寬度

如果您定義一個div元素,並添加width = 200,margin = 3px,border = 4px和padding = 1px。然後在使用$('div').width()的JS代碼中查詢時,根據公式返回200而不是寬度。

+3

jQuery的['.WIDTH()']( http://api.jquery.com/width/)方法*將始終返回內容寬度*。試試['.outerWidth()'](http://api.jquery.com/outerWidth/)。 – 2014-09-22 12:00:08

+0

請參閱:[jQuery中寬度,innerWidth和outerWidth,height,innerHeight和outerHeight之間的區別是什麼](http://stackoverflow.com/questions/17845027/what-is-difference-between-width-innerwidth-and-outerwidth -height-innerheight) – 2014-09-22 12:03:36

回答

2

請檢查width();規格。它返回無邊距,填充和邊框的寬度。

如果要包含填充和邊框,則必須使用.outerWidth(),如果還想包含邊距,則必須使用.outerWidth(true)

希望這有助於

1

嘗試用outerWidth(true) insted的的width

outerWidth(true)將返回元素的寬度,與左右填充,邊框和可選保證金,以像素爲單位一起。

使用$( 'DIV')。寬度(),則返回200

這是例外的結果。

如果你想根據公式你有outerWidth(true)

$('div').outerWidth(true) 
1

.outerWidth(true);嘗試將正常運行需要得到寬度

Outer width