为什么自我关闭的脚本元素不起作用?
浏览器不能正确识别的原因是什么。
<script src="foobar.js" /> <!-- self-closing script element -->
只有这个能被识别。
<script src="foobar.js"></script>
这是否打破了XHTML支持的概念?
注意:这个说法至少对所有的IE(6-8 beta 2)来说是正确的。
1280
3
XHTML 1规范说。
[С.3. 元素最小化和空元素内容] (http://www.w3.org/TR/xhtml1/#C_3)
XHTML DTD将脚本元素规定为。
Internet Explorer 8和更早的版本不支持XHTML解析。即使你使用了XML声明和/或XHTML doctype,旧的IE仍然将文档解析为普通的HTML。而在普通的HTML中,不支持自我封闭的语法。后面的斜线会被忽略,你必须使用一个明确的关闭标签。
即使是支持XHTML解析的浏览器,如IE 9及以后的版本,也仍然会把文档解析为HTML,除非你用XML内容类型来提供文档。但在这种情况下,老的IE根本不会显示该文档!
与XML和XHTML不同,HTML不知道自闭的语法。 把XHTML解释为HTML的浏览器不知道
/
字符表示标签应该是自闭的;相反,它们把它解释为一个空属性,解析器仍然认为标签是'开放的'。正如
<script defer>
被视为<script defer="defer">一样,
<script />被视为
<script /="/">。