鉴于问题:
body {
width: 100%;
}
#percent {
width: 100%;
}
#percent td {
width: 25%;
background: #cdd;
}
<p>Percent only</p>
<table id="percent">
<tbody>
<tr>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
</tr>
<tr>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
</tr>
</tbody>
</table>
http://jsfiddle.net/userdude/3SKwP/
表格的宽度不会超出body
元素的宽度,因为两者都设置为100%
.
为了弥补缺少定义width
来强制body
溢出,您可以min-width
在td
元素上使用:
#percent,
#fixed {
width: 100%;
}
#percent td,
#fixed td {
width: 25%;
background: #cdd;
}
#fixed td {
min-width: 150px;
}
<p>min-width: 150px</p>
<table id="fixed">
<tbody>
<tr>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
</tr>
<tr>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
<td>Test</td>
</tr>
</tbody>
</table>
http://jsfiddle.net/userdude/3SKwP/1/
这样做的缺点,如果你想这样称呼它,就是 IE7 不支持min-width
. 因此,如果您需要支持它,则必须为它填充一些东西。但除此之外,这对你来说应该很好。