我是否需要在<img>或<br>标签等末尾加上“/”?

你需要在img标签的末尾加上/ ? 我在W3schools.com上看到一个没有/ 的例子 :

 <img src="smiley.gif" alt="Smiley face" height="42" width="42"> 

我知道没有必要自我closures标签,至less在我的浏览器,但我应该这样做吗?

/只是XHTML和XML所必需的。

如果您使用的是HTML5文档types,则不需要以这种方式终止自闭标签

这适用于<img src="img.png" /><br /><hr />

即只需使用<img src="img.png"><br><hr>

如果你需要一个空元素(比如div ), 不要使用<div /> ,而应该使用<div></div> 。 这很重要,因为在HTML5中, 斜杠被忽略 , <div />被解释为<div>而没有结束标记。

这只是XHTML标准所必需的,正如其他答案中所提到的。 不过,它也有其他用途。

一些代码编辑器(如Notepad ++)允许您展开/折叠标签以加快查看速度。 但是如果你只是放了<img> ,它应该如何知道不需要结束标签的标签和使用相同标签名称(但是在XML中)的标签之间的区别呢? 如果您使用自定义标签,情况尤其如此。

因此,使用/>显式地告诉编辑它是自闭的,允许它继续正常工作,而不会警告你有一个不匹配的标签。

除了有效性问题之外,仅仅依赖于您正在validation的文档types,只有在您的页面使用XML内容types(如application/xhtml+xml (这很less使用,因为旧版本的IE扼杀它)。

如果这样做,那么格式error handling就是Draconian:任何错误(例如,没有匹配结束标记的开始标记,当使用<img ... />语法时可能是开始标记本身)会阻止页面根本不显示,而是显示错误消息。

我认为closuresimg标签会更好。 关于我的头顶我可以想到2个原因:

  1. 它不会在xhtml下validation,如果你关心这样的事情。

  2. 任何/任何尝试以编程方式工作的人可能会混淆/运行到有关未closures标记的问题。 谁知道,这可能包括你在未来。 🙂

该代码是可以接受的HTML不使用/但它是必需的XHTML。 我更喜欢把/从,以便从HTML迁移到XHTML没有问题