为什么不能将colspan属性设置为零



根据HTML5的描述,属性rowspan的值可能为0。在这种情况下,值为零意味着单元格将跨越行组中给定列的所有剩余单元格。

然而,CCD_ 3的值可能不等于零。

因此,出现了一个问题,对属性colspan进行这种限制的原因是什么?

引用自https://lists.w3.org/Archives/Public/public-html/2011Aug/0293.html但它详细解释了这个问题。

在HTML4中,TD/TH元素的"colspan"one_answers"rowspan"属性被允许为零值("0"):http://www.w3.org/TR/html4/struct/tables.html#adef-colspan

当列或行号事先未知时,这非常有用。强制web编辑器计算列或行号是有害的手动,而浏览器可以很容易地自动做到这一点。

规范开发中有一个已知的规则:当有两个规范的独立实现,然后是规范状态提升为"推荐"("候选人"或"提议")。

但已经有两个(嗯,1.5)独立工作零列span/rowspan:的实现

  1. Firefox(zero-colspan和rowspan都能正常工作)

  2. 和Opera(支持行span="0",不支持colspan="零")。

因此,colspan/rowspan的零值是非常好的候选者HTML规范,此外,为了鼓励其他浏览器供应商尽快实现这个有用的特性。

没有严重的理由删除列span/rowspan的零值来自HTML规范。它并不是"在all",它已经得到了很好的实现,应该保持原样在HTML规范中

此外,HTML5规范(4.9.11)明确规定colspan应为非零,rowspan可以为零,以及零的含义。http://www.w3.org/TR/html5/tabular-data.html#attr-第td列

原因的快速答案是HTML5规范明确规定了这一限制。IMO我看不出浏览器有什么理由不保留零的含义来按照Firefox所实现的方式行事,而不是遵循规范。

最新更新