浏览器会自动插入哪些DOM元素?

时间:2012-01-19 13:39:01

标签: dom google-chrome xpath

我在客户端使用XPaths服务器端,我很困惑为什么表路径(即td中的内容)无法找到在DOM中。

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

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

1 个答案:

答案 0 :(得分:3)

在SGML / HTML4术语中,可以推断出一些其他元素,甚至可以推断headbody元素,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中查找详细信息。