在模板标签内使用 invalid/incomplete html

using invalid/incomplete html inside template tag

我想为某些行制作模板,但我想知道规范是否允许省略行的封闭 table 标记。如果我想遍历结果DOM,下面的html有效吗?

<template>
    <tr><td>some data</td><td>more data</td></tr>
    <tr><td>more...</td><td>ok, it is over now</td></tr>
</template>

或者我必须像下面那样做吗?

<template>
    <table>
        <tr><td>some data</td><td>more data</td></tr>
        <tr><td>more...</td><td>ok, it is over now</td></tr>
    </table>
</template>

插入不正确的 DOM 会使某些浏览器尝试更正它。在某些情况下,它会创建封闭的 table 和 tbody,因此遍历并不像原始源代码中看起来的那样。这些规则是否适用于模板标签的内容?

是的,有效。允许模板接收必须位于 tbody 甚至 tr 内的内容,如:

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/template

第一个示例在 template 中使用 tr 而没有 table 也没有 tbody.