HTML5の<br>と<br />

HTML5の解説本にどっちでもいいと書いてあった覚えがあるけど、巷のサイトでは混乱しているので仕様書に当たる。結果、「スラッシュは入れてもいいけど何の効果もないよ」という文を発見。よかった、小生の記憶は間違ってなかった。

if the element is one of the void elements, (省略) then there may be a single U+002F SOLIDUS character (/). This character has no effect on void elements,

https://www.w3.org/TR/html51/syntax.html#ref-for-void-elements-6

ちなみに、終了タグがないのはこいつら(void elements)だ。imgとかhrとかは常識的にわかるけど、inputもない。


XHTML。しかし、XHTMLなんぞは失敗した過去の遺物であり、仕様書を調べるのが面倒くさいので英語版ウィキペディアから。

Note that any of these is acceptable in XHTML: <br></br>, <br/>, and <br />. Older HTML-only browsers interpreting it as HTML will generally accept <br> and <br />.

https://en.wikipedia.org/wiki/XHTML#Common_errors
  • <br></br>
  • <br/>
  • <br />

以上の書き方はみんな正しい。でも古いブラウザ(当時)は <br/> を理解できないことがある。

結論

  • HTML5なら<br>
    • ただし<br />と書いてもよい
  • XHTMLなら<br/>
    • ただし前方互換を意識して<br />にしてもよい