5

我上一个问题的答案之一是 colgroup/col 应该只在 IE 中工作。

我写了一个适用于 IE9 的示例(见下文)(将单元格内容集中在第 3 列),但不适用于最新版本的 Chrome。

我做错了什么?

HTML 示例:

<html>
<head><title>test table centerring</title></head>
<body>

    <table border="1">
        <colgroup>
            <col/>
            <col/>
            <col align="center">
        </colgroup>
        <thead>
            <tr>
                <th>#</th>
                <th>Name</th>
                <th>Value</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>1</td>
                <td>Name 1</td>
                <td>Value 1</td>
            </tr>
            <tr>
                <td>2</td>
                <td>Name 2, Name 2, Name 2, Name 2</td>
                <td>Value 2</td>
            </tr>
            <tr>
                <td>3</td>
                <td>Name 3</td>
                <td>Value 3</td>
            </tr>
            <tr>
                <td>4</td>
                <td>Name 4</td>
                <td>Value 4, Value 4, Value 4, Value 4</td>
            </tr>
        </tbody>
    </table>        

</body></html>
4

1 回答 1

2

实际上,我很确定只有 IE 支持这一点,但对问题的答案之一感到困惑是否有任何方法可以使表格中的某些列居中?. 答案的作者还指出了一些限制: http ://www.quirksmode.org/css/columns.html

不幸的是,表列很难使用,因为如果你使用它们,你实际上有一个以两种方式细分的表:按行和按列。一般规则是在行上定义的任何样式都会覆盖在列上定义的任何样式。

其次,W3C 规定只有少数声明可以用于列:边框、背景、宽度和可见性。例外:IE7 及更低版本允许所有声明。

第三,列样式是应用于整个列还是应用于其中<td>包含的单个 s 存在一些混淆。边界声明似乎应用于整个列,但宽度应用于单个单元格。

这使得 colgroup/col 对居中几乎毫无用处。

于 2012-04-26T02:52:31.430 回答