有效的HTML和TD元素的数量

Lia*_*iam 2 html validation markup

我有一个HTML表,有几列和几行.最后一行并不总是具有与其他行一样多的TD元素.它在我检查过的几个浏览器中正确呈现并通过验证检查.但似乎不正确.TD元素的数量是否应该在每一行中相同?

编辑:这可能发生在有或没有colspans和rowpans.

Que*_*tin 7

规范明确允许行之间的列数不一致(至少在标记中,浏览器应该生成额外的列以弥补差异).

列数等于列数最多的行所需的列数,包括跨越多列的单元格.对于具有少于此列数的任何行,该行的末尾应填充空单元格.

......但是,坦率地说,这种数据结构根本没有任何意义.因此,如果您的行长度不一致,那么您可能做错了.


Bes*_*ska 6

"每行中TD元素的数量应该相同吗?"

虽然不是严格要求,但我说"是的,或者你应该让colspans来补偿它们."

<table>
    <tr>
        <td>two</td>
        <td>columns</td>
    </tr>
    <tr>
        <td colspan="2">one big column</td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

尽管W3C规范没有要求,但我对此的看法是,在考虑浏览器如何支持任何东西的方式时,我会尽可能地使用colspans或空单元来确保它一致,以确保它正在做我想要的所有浏览器.

第二个好处是维护代码的任何人.使其更明显的是什么,而不是将其视为可能的错误.