1

我正在制作 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/

4

0 回答 0