是否存在任何浏览器问题,总是在html中折叠空标签。 因此,例如,一个空的头标签可以这样写在html中总是自我关闭空标签有什么问题吗?
<head></head>
,但也可以这样写
<head/>
将在第二情况下会引起任何问题之情况?
感谢
是否存在任何浏览器问题,总是在html中折叠空标签。 因此,例如,一个空的头标签可以这样写在html中总是自我关闭空标签有什么问题吗?
<head></head>
,但也可以这样写
<head/>
将在第二情况下会引起任何问题之情况?
感谢
你不应该在XHTML中使用最小化形式头。
http://www.w3.org/TR/xhtml1/#guidelines
关于空元素:
http://www.w3.org/TR/xhtml1/#C_3
给定一个元件 ,其内容模型的一个空的实例不是空( 例如,一个空的标题或段落) 请勿使用最小化格式(例如 使用
<p> </p>
而不使用<p />
)。
换句话说,段落应该总是在XHTML中关闭,在HTML中你可以只用打开标签。但是,如果元素应该有内容,应该适当地打开和关闭。
例如,换行符具有空格式内容模型,可写为<br />
(与<hr />
相同),但不是<div />
。
自闭<script>
标签可以搞砸某些浏览器实在太差了。我记得自己封闭了一个脚本标记后,整个页面在IE浏览器中消失得无影无踪 - 在它被作为脚本读取之后的所有内容。
Argh。交叉帖子。 +1为相同的答案! – BradBrening 2010-05-08 23:38:31
不是我所知道的。过去一直在困扰我的警告是自己关闭脚本标记:<script type="text/javascript" src="somefile.js" />
这会导致一些有趣的失败。
我相信一些旧的浏览器曾与缺乏whitespacing的问题 - 尤其是 <head/>
将被解释为“头/”的标签,而<head />
将与空属性“/”被解释为“头”标签这被忽略。
这只影响一些浏览器,AFAIK。要么是有效的XHTML,要么是早期的纯HTML浏览器可能会遇到麻烦。
这其实是记录在the XHTML guidelines为C.2
对你的陈述的一些提及会很好,但我想我可以回忆起你描述的同样的行为。 +1,因为我不认为这个帖子应该有负分。 – MyGGaN 2010-05-09 06:53:22
虽然我引用的规范没有明确说明这一点,但我认为它确实提到了/作为一个属性的解释,足以重构其余的解释。希望我能找到更具体的参考... :) – 2010-05-09 10:51:22
假设你服务你的XHTML为XML,没有。 <head></head>
完全是相当于<head />
。实际上,XML解析器甚至不会告诉你你拥有哪一个。
(有,然而,在该<head>
标签必须问题包含<title>
)
一般来说空元素可以写成一个自我结束标记,或者开始和结束标记。
但是,HTML4 DTD指定文档HEAD必须包含TITLE元素。
“每个HTML文档都必须在HEAD部分有一个TITLE元素。”
http://www.w3.org/TR/1999/REC-html401-19991224/struct/global.html#h-7.4.1
即使只考虑浏览器的问题(即不考虑有效期)和单独缩小问题下到head
标签,答案是肯定的还是。
比较
<head/>
<object>Does this display?</object>
对
<head></head>
<object>Does this display?</object>
每个被服务为text/html到IE的任何版本。
Does this display?
只会在后面的例子中显示。
自闭标签不存在HTML。 /
始终被忽略,即<foo/>
和<foo>
是等效的。对于像br
这样的元素,这很好,因为你想要<br>
。但是,<script src="..." />
的含义与<script src="...">
相同,这是一个问题(如其他答案中所述)。 <head/>
不是一个问题,因为无论如何</head>
结束标记是可选的。
在XML,另一方面,自闭标签做你想要的。但是,即使您有XHTML文档类型,您可能也会使用XML。除非您以text/xml
,application/xml
或application/xhtml+xml
MIME类型(或任何其他XML MIME类型)发送文档,特别是如果您将它们发送为text/html
,则它们将不会被视为XML。
你不能有一个空头元素,'