我試圖創建一個<表>,不超過一定的寬度(比方說500px),即使有任何尺寸的邊框。對於<table>元素,是否存在與「width:auto」等效的CSS聲明?
通常情況下,如果我這樣做:
(HTML)
<div>
<table>
<tr>
<td>This is a test.</td>
</tr>
</table>
</div>
(CSS)
div {
width: 500px;
}
table {
width: 100%;
border: 10px solid #000;
}
我要結束了一個<表e >即510px寬,因爲左右邊界的一半將最終在<div>的外部。我想要的是<表> 500px寬總數(即,它不超過其父/容器的寬度)。因此,左右邊框的寬度均爲10px,在500px寬的範圍內設置,其中包含<div> - 因此表格的剩餘內容區域將爲480px。
通過使用CSS聲明「width:auto。」,我可以很容易地將這種類型的東西帶到<div>。我可以通過添加一個額外的<div>圍繞它使用「寬度:自動」與邊框設置<div>,而不是<表>表。
但是,我希望存在一個更優雅的解決方案(必須跨瀏覽器)。有沒有我不知道的東西?
您使用的是什麼xhtml聲明?我認爲一個嚴格的聲明會導致一個480px的表格(邊界爲20px) – 2009-10-26 17:20:08
@adam ...將邊框添加到聲明的寬度。 – 2009-10-26 17:24:35
但是表格中沒有聲明的寬度 - 只在包含div上,所以只要框模型正確,表格+邊框不能大於500px – 2009-10-26 17:27:50