【问题标题】:Which DOM elements do browsers automatically insert?浏览器会自动插入哪些 DOM 元素?
【发布时间】:2012-02-14 04:00:36
【问题描述】:

我正在生成 XPaths 服务器端以供客户端使用,我很困惑为什么在DOM。

事实证明,现代浏览器(至少 Chrome 和 Firefox)在文档加载时会在表格行周围插入 tbody 标签。见Why do browsers insert tbody element into table elements?

除了tbody,在计算XPaths 服务器端时我还应该注意其他DOM 元素吗?

【问题讨论】:

  • 如果您确保您的服务器端 HTML 实际上有效,那么您没有任何问题。
  • @Raynos 错误。一些元素有可选的开始和结束标签;您的标记可能是有效的,但元素仍被插入。
  • @duri 你的权利,发出<tbody> 是有效的。我将更正声明说“如果您确保您的服务器端 HTML 没有歧义,那么您将不会有任何问题”

标签: dom google-chrome xpath


【解决方案1】:

在 SGML/HTML4 术语中,可以推断出其他一些元素,甚至可以推断出 head 和 body 元素,而 HTML5 继续这一点。所以像 http://home.arcor.de/martin.honnen/html/test2012011901.html 这样的文档是有效的 HTML5,尽管它既没有 head 也没有 body 元素,并且任何 HTML5 解析器都应该添加它们,所以 DOM 树看起来像

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<h1>Test</h1>
<p>This is a test.</p>
</body>
</html>

我不能告诉你关于其他元素的所有细节,以上只是一个例子。在http://www.w3.org/TR/html5/syntax.html#optional-tags中查找详细信息。

【讨论】:

  • 谢谢,这正是我要找的
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-03
  • 2010-10-30
  • 2014-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多