我在表格中有一个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>
样式background:blue
正在应用,但不是样式color:red
(在IE,Safari,Opera,Chrome,FireFox上测试过)。
这是什么原因?
我们如何在整个列中应用单一文本颜色?
答案 0 :(得分:3)
见the specification。只有四个属性适用于表格列,而color
不是其中之一。
这是继承规则在CSS中如何工作的结果。
Ian Hixie解释in more detail。
如果要将前景色应用于特定列,则必须逐个单元地进行。除非您通过将th
和td
混合在同一行或使用colspanning来使问题复杂化,否则您可以执行以下操作:
td { color: blue; }
td + td { color: black; }