为什么在Chrome上无法正确呈现:
<h:html xmlns:h="http://www.w3.org/1999/xhtml">
<h:head/>
<h:body>
<h:ul>
<h:li>
A
</h:li>
<h:li>
B
</h:li>
</h:ul>
</h:body>
</h:html>
虽然这确实正确呈现? :
<html xmlns="http://www.w3.org/1999/xhtml">
<head/>
<body>
<ul>
<li>
A
</li>
<li>
B
</li>
</ul>
</body>
</html>
我在这里错过了什么? Doens't默认命名空间应该与明确指定命名空间的行为相同吗?
HTML不是XML。
当我在Chrome中使用application/xml
Content-Type测试时,您的代码运行正常。
它不像text/html
那样工作。
HTML允许xmlns
属性与XML兼容,并且允许将一些XML(例如SVG)嵌入其中,但HTML解析器不支持HTML元素的命名空间别名。