在HTML5中,是否仍需要像XHTML中那样的斜杠?
<img src="some_image.png" />
如果我删除了,validator.w3.org并没有抱怨,甚至没有警告。但是一些在线文档似乎表明,诸如img,link,meta,br等标签仍需要使用斜杠。
在HTML5中,是否仍需要像XHTML中那样的斜杠?
<img src="some_image.png" />
如果我删除了,validator.w3.org并没有抱怨,甚至没有警告。但是一些在线文档似乎表明,诸如img,link,meta,br等标签仍需要使用斜杠。
Answers:
img
标签是Void Elements,因此它们不需要结束标签。
无效元素区域,基础,br,col,命令,嵌入,hr,img,输入,keygen,链接,meta,param,源,track,wbr
...
无效元素只有一个开始标签;不得为void元素指定结束标签。
话虽这么说,它不是在HTML5中严格解析的,因此不会造成任何重大危害。
<br/
)的,但此答案仅涉及结束标记(例如<br></br>
)。
an ending slash
与混淆an end tag
,从而误解了它引用的规范段落。这导致@YannisDran的混乱。@minitech正确说明了什么是正确的。
在HTML 5中,斜杠在void元素上是可选的,例如img
(我添加这个是因为当前接受的答案仅是:“不得为void元素指定结束标签”,并且不解决void元素中的斜杠)。
引用http://www.w3.org/TR/html5/syntax.html#start-tags(数字6):
然后,如果该元素是void元素之一,或者如果该元素是外来元素,则可能存在单个“ /”(U + 002F)字符。此字符对void元素无效,但对异物则将start标签标记为自闭合。
<br/>
还是存在<img ... />
错误。
不。HTML甚至在HTML5之前都从未要求过它。如果您打算将XHTML与HTML功能一起使用,则可以,这是必需的。
void元素的斜杠是可选的。
两者都是有效的HTML5:
<img src="some_image.png" />
和
<img src="some_image.png">
无效元素是:
area
base
br
col
embed
hr
img
👍 input
link
meta
param
source
track
wbr
除了有趣:
无效元素不能包含任何内容(由于没有结束标签,因此不能在开始标签和结束标签之间放置任何内容)。
有关更多详细信息,请访问:https : //html.spec.whatwg.org/multipage/syntax.html#elements-2
另请参阅以下SO问题:
HTML5中的自动关闭标签(无效元素)