2011-12-03 24 views
5

我希望能夠用一個子跨度完全填滿父母的div。 問題是我想填充它的範圍是與美樂家主題,它有不同的填充和邊距。所以我無法爲跨度的高度編碼任何尺寸。CSS填寫父div完全乾淨

如果我試圖將跨度的高度設置爲100%,那麼它實際上會超過100%+ 6像素(對於此主題填充更多像素(但超出量因主題而異)。你如何做到這一點,無論跨度的填充/邊距是多少,它只填充父div的100%?

非常感謝您的幫助。

+0

你應該看看'box-sizing:border-box;' – jessegavin

+0

是的,只是注意到,當我建立我的小提琴時,jessegavin在他的評論中給出了「短版」的答案。 – ScottS

回答

6
-webkit-box-sizing: border-box; 
-moz-box-sizing: border-box;  
box-sizing: border-box; 

的例子見http://jsfiddle.net/mbB8t/2/

澄清:適用於所有現代瀏覽器(IE8 +)。

+0

如果父代擁有'padding',這似乎不起作用。 [這](https://jsfiddle.net/mbB8t/137/)是你的確切小提琴簡單地改變'div margin'爲'padding',你知道如何用padding實現相同的結果嗎?謝謝。 – Jake

+1

@Jake:考慮到如何配置父div的額外限制,如果你不能(或不想)刪除它的填充,那麼可能你唯一的選擇是[使用定位來實現它](http: //jsfiddle.net/mbB8t/145/)。根據情況,這可能也可能不需要。 – ScottS

+0

好的謝謝。這看起來像工作。 – Jake