Dis*_*oat 17 html css col css-tables
W3指定表列(包含<col>元素)只允许四个CSS规则- 边框,背景,宽度和可见性.
有谁知道这个决定背后的原因?如果你可以有边框和背景,为什么不能使用字体和颜色?
Que*_*tin 11
Ian Hixie在这里详细解释:为什么只有四个属性适用于表格列的原因.相关报价:
文本的颜色取决于其元素的"颜色"属性.除非指定,否则'color'属性(基本上)默认为'inherit',这意味着"获取父元素的值".
因此,对于单元格中的某些文本,颜色由单元格的"颜色"属性决定,该属性取自行中的行,该行取自表的父级,依此类推.
专栏怎么样?那么,该列不是单元格的祖先之一,所以它永远不会被人看到!其中存在问题.
基于我有限的理解,只是在黑暗中狂奔:
我认为通过列相关元素的样式是受限制的,因为虽然<col>并且<colgroup>表示单元格的列,但它实际上并不包含它们(它们实际上包含在<tr>s中).随之而来的是优先级和特异性以及级联问题(因为级联只能在包含/容器元素之间进行) - 当来自<tr>和<col>(在多重继承层次结构中将是相同级别)的冲突样式规则发生时 - 应该是单元格实际使用?
至于为什么允许那些特殊的风格属性:不知道.