一尘不染

为什么浏览器将tbody元素插入表元素?

html

我正在使用原始html和JQuery讨论一些想法。我所做的一件事是创建一个包含一组行的表元素。

<table id="MyTable" >
    <tr>
        <td>Title</td>
    </tr>
    <tr>
        <td>1</td>
    </tr>
    <tr>
        <td>2</td>
    </tr>
    <tr>
        <td>3</td>
    </tr>
    <tr>
        <td>4</td>
    </tr>
</table>

但是,当我在FireFox + Firebug,IE8开发人员工具栏或Google Chrome
JavaScript调试器中查看代码时,所有这些都表明在所有 tr* 节点周围都存在一个 tbody 元素。 *

我不反对这种情况……但这是标准行为吗?


阅读 359

收藏
2020-05-10

共1个答案

一尘不染

TBODY元素定义表中的一组数据行。TABLE必须具有一个或多个TBODY元素,这些元素必须位于可选的TFOOT之后。TBODY结束标签始终是可选的。当表仅包含一个TBODY而没有THEAD或TFOOT时,开始标签是可选的。

因此,那里总是有一个提示音(尽管有时开始标记和结束标记都是可选的并且被省略了),并且您使用的工具向您展示时是正确的。

另一方面,除非显式地包含thead或tfoot,否则它们永远都不会出现,并且如果这样做,则tbody也必须是显性的。

2020-05-10