我正在制作 HTML 表格来显示数据,并且表格中有不同数量的列,但希望保持相同数量的“背景列”,以保持列的宽度一致。
其原因是特定于我的应用程序并且与问题无关,因为这似乎是一个错误(或者我误解了col
's 和colgroup
's 应该如何工作?)
在我在这里展示的 HTML 中,我已将实际列数减少到两个。
我使用这样的方法制作表格,并使用 CSS 设置元素colgroup
的宽度:col
表格1:
<table>
<colgroup>
<col />
<col />
</colgroup>
<tbody>
<tr>
<td colspan="1">col1</td>
<td colspan="1">col2</td>
</tr>
<tr>
<td colspan="2">col1</td>
</tr>
</tbody>
</table>
表 2:
<table>
<colgroup>
<col />
<col />
</colgroup>
<tbody>
<tr>
<td colspan="2">col1</td>
</tr>
<tr>
<td colspan="2">col1</td>
</tr>
</tbody>
</table>
CSS:
col {
width:100px;
}
这两个表都可以在 FireFox、Chrome、IE7 和 IE8(其中“IE”代表“Internet Explorer”)中呈现良好。然而,在 IE9 中,表 2仅以一列的宽度呈现。
我试过有无table-layout: fixed
我已经对这些表以及所有空格都删除的表进行了修改,以说明这与 IE9 中的表渲染错误无关:http: //jsfiddle.net/ketnp/1/