【发布时间】:2011-03-22 22:41:56
【问题描述】:
嗨,
如果我没记错的话,我们一开始就有它,因为如果我们不添加空格,一些旧版本的 Netscape 会阻塞(它会认为节点永远不会结束)。
但是今天真的有必要吗?
【问题讨论】:
-
据我所知,这不是有效的 HTML,无论有无空格。
-
(HTML5除外,如@Gordon Tucker pointed out
标签: html
嗨,
如果我没记错的话,我们一开始就有它,因为如果我们不添加空格,一些旧版本的 Netscape 会阻塞(它会认为节点永远不会结束)。
但是今天真的有必要吗?
【问题讨论】:
标签: html
根据HTML5 规范,void elements 不需要自闭合/ 字符。
他们的确切措辞是
那么,如果元素是 无效元素,或者如果元素是 外来元素,那么可能有 单个 U+002F SOLIDUS 字符 (/)。 这个角色对虚空没有影响 元素,但在外来元素上 将开始标签标记为自动关闭。
他们将 void 元素列为area, base, br, col, command, embed, hr, img, input, keygen, link, meta, param, source, track, wbr
我可能理解错了,但似乎以下内容都适用于 html5
<hr>
<hr/>
<hr />
看来这真的取决于您使用的文档类型
【讨论】:
如果您使用正确的 content-type: application/xhtml+xml 标头提供有效的 XML,那么不会。如果你服务于XHTML as HTML,那么你就是should have it there,尽管现在大多数浏览器都可以处理一些非常糟糕的代码,所以只有你重视正确的标记才是关键。
【讨论】:
非常怀疑。现代浏览器在处理此类问题时变得非常强大。
很长一段时间以来,我从来没有费心自己插入那个额外的空间。坦率地说,我什至不使用 XHTML,所以我坚持使用 <br> 而没有自动关闭 :)
【讨论】:
<hr>、<hr/> 和 <hr /> 都是有效的 HTML5。
<hr/> 在 XHTML 中没有给出任何验证警告,并且概括“现代浏览器”也没有提供有用的信息。