当前位置:  开发笔记 > 编程语言 > 正文

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

如何解决《为什么浏览器会将tbody元素插入表元素中?》经验,为你挑选了2个好方法。

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

Title
1
2
3
4

但是,当我在FireFox + Firebug,IE8开发人员工具栏或Google Chrome JavaScript调试器中查看代码时......所有这些代码都显示了围绕所有tr节点的tbody元素.

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



1> ysth..:

http://htmlhelp.com/reference/html40/tables/tbody.html:

TBODY元素定义表中的一组数据行.TABLE必须具有一个或多个TBODY元素,这些元素必须遵循可选的TFOOT.TBODY结束标记始终是可选的.当表只包含一个TBODY且没有THEAD或TFOOT时,start标记是可选的.

所以总有一个tbody(虽然有时候开始和结束标签都是可选的并且省略了),并且你正在使用的工具在向你显示它时是正确的.

另一方面,除非你明确地包含它们,否则thead或tfoot永远不会存在,如果你这样做,那么tbody也必须是明确的.


@Jack Douglas:不,在那个答案中链接的规范明确地说``和`开始标记:可选,结束标记:可选` - 也就是说,表元素有一个或多个tbody元素(`TBODY +`)和tbody元素有一个可选的(隐含的,如果没有)指定)开始标记.不可否认,这与完全可选的TBODY并没有什么不同,但是**这个问题正是关于这个差异 - 它是否存在于DOM中,无论它是否出现在html文本中.

2> Matthew Flas..:

是的,tbody是表示表格主体的标准元素.它不需要将它放在标记中,但它将包含在DOM中,如您所见.


为什么不是thead/tfoot?好吧,因为他们不需要渲染一个像tbody那样的表.
推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有