如何使样式适用于 <col> 标签?

Lec*_*key 0 html html-table

col在表中有一个标签:

<!doctype html>
<table>
    <col style='color:red;background:blue;'/>
    <tr>
        <td>1</td>
        <td>2</td>
    </tr>
    <tr>
        <td>3</td>
        <td>4</td>
    </tr>
    <tr>
        <td>5</td>
        <td>6</td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

样式background:blue被应用,但样式没有被应用color:red(在 IE、Safari、Opera、Chrome、FireFox 上测试)。

这是什么原因呢?

我们如何在整个列中应用单一文本颜色?

Que*_*tin 5

参见规格书。只有四个属性适用于表列,但color不是其中之一。

这是继承规则在 CSS 中工作方式的结果。

Ian Hixie 对此进行了更详细的解释。

如果要将前景色应用到特定列,则必须逐个单元格地执行此操作。除非您通过将th和混合td在同一行或使用 colspanning 使问题变得复杂,否则您可以执行以下操作:

td { color: blue; }
td + td { color: black; }
Run Code Online (Sandbox Code Playgroud)