2012-05-16 117 views
0

在示例中,爲什麼寬度不是110.我知道這是因爲邊框。但是,什麼是跨瀏覽器的方式來設置寬度爲110。設置寬度爲110

http://jsfiddle.net/RS5wf/

+0

你知道'.width()'和'.outerWidth()'之間的區別,不是嗎?並且你知道'width'的計算(並且包含'border')... –

+0

@AndreasNiedermair根據文檔,'.width()'不包含邊界。它將css寬度作爲數字值返回,邊界添加到該值,但不會更改'.css('width')'返回的內容。 –

+0

@KevinB正確 - 它確實*不*包含邊框。所以如果我們有瀏覽器式的'border-width:2px;'現在一切都清楚了,不是嗎? (請參閱我修改過的'border-width'-example @ http://jsfiddle.net/RS5wf/4/) –

回答

1

這是由於所謂的box-sizing一個不太知名的屬性。

框的大小決定了使用哪種框模型來渲染對象。

content-box是大多數元素的默認值,但表單元素往往會默認爲邊框,這在設置表單元素的樣式時可能有點令人沮喪。

這裏是關於box-sizing

0

寬度有很大的聯繫可使用.WIDTH()讀取或者,它返回內部寬度(去除填充和邊界像素),或.outerWidth(),它返回的總寬度。

只能使用.width(size)設置寬度,而不能使用.outerWidth(size)。