這裏的HTML:http://jsfiddle.net/jC8DL/1/爲什麼box-sizing在table vs div上表現不同?
<div style='width:300px;border:1px solid green'>
<div>Outer div</div>
<div style='width:100%;border:1px solid red;margin:10px;'>
Inner div, 10px margin.
</div>
<div style='width:100%;border:1px solid red;padding:10px;'>
Inner div, 10px padding.
</div>
<div style='width:100%;border:1px solid red;padding:10px;box-sizing:border-box'>
Same, with box-sizing: border-box
</div>
<table style='width:100%;border:1px solid red;padding:10px;'>
<tr><td>Inner table, 10px padding</td></tr>
</table>
</div>
它看起來像這在我的瀏覽器:
我想我明白了一切,直到最後一個。我的Chrome檢查員顯示該表的計算box-sizing
風格是content-box
,所以我期望它的行爲像第二個div,並溢出,看起來很醜。爲什麼不同?這是記錄在HTML/CSS規範的某處嗎?
這是因爲'div'是塊元素。嘗試添加'display:block;'到內部表格。它將顯示與div相同的內容。 –
@Bram Vanroy:1)那就是[請求問題](https://en.wikipedia.org/wiki/Begging_the_question)。 2)這個問題的重點是要問一個表爲什麼表現不同於一個塊;如何將表格變成塊來完成? – BoltClock
@BoltClock你錯誤地解釋了我的評論(因此,它是*評論*)。總之,我在解釋爲什麼會出現這種差異。我沒有試圖回答這個問題。無論如何,我沒有把它作爲答案發布。 –