HTMLの空要素を閉じるときスラッシュは必要なのか
空要素(<br>
や<img>
等、子要素を持つことができない要素)を閉じるときに<br />
なのかそれとも<br>
で良いのかというお話。
HTMLにおいて、空要素の閉じスラッシュ/
は必要無い
調べたら、AppleやMozilla、Operaの関係者という、Web最前線のすごい人達が集まっているコミュニティ WHATWG のFAQに答えが載っていた。
HTML の空要素(たとえば、br, img, input 要素)に終端スラッシュをいれる必要はありません。
<br />
の代わりに<br>
と書けば良いだけです。これは HTML4 と同じです。しかし、XHTML1 の利用が広まっているため、かなり多くのページで、終端スラッシュが使われています。そのため、XHTML1 から HTML への移行を容易にするために、終端スラッシュの構文を HTML の空要素で使うことができるようになりました。
引用元: WHATWG FAQ - 日本語訳 - HTML5.JP
原文: html/FAQ.md at master · whatwg/html
なるほどXMLの文法でHTMLを定義し直したXHTML1では/>
が必須だったのか。
(HTML5はWHATWGがW3Cに提唱したんですね知らなかった!)
そもそもXMLの文法って
空要素タグは開始タグのように見えますが、最後の
>
の前に (/
) が付きます。
引用元:XML標準 - 開始タグ、終了タグ、および空要素タグ
とのこと。 XHTMLはこの文法が適用されたものだということがわかる。