I'tentei verificar outras respostas, mas eu'ainda estou confuso - especialmente depois de ver a referência W3schools HTML 5.
Eu pensei que HTML 4.01 era para "allow" tags simples para ser apenas <img>
e <br>
. Depois veio o XHTML com <img />
e <br />
(onde alguém disse que o espaço está lá para navegadores mais antigos).
Agora eu'estou me perguntando como eu'm deveria formatar meu código ao praticar HTML 5.
É <br>
, <br/>
ou <br />
?
Simplesmente <br>
é suficiente.
Os outros formulários estão lá para compatibilidade com XHTML; para tornar possível escrever o mesmo código que o XHTML, e tê-lo também funcionando como HTML. Alguns sistemas que geram HTML podem ser baseados em geradores de XML, e assim não têm a capacidade de produzir apenas uma tag nua <br>
; se você estiver utilizando tal sistema, não há problema em utilizar <br/>
, só não é necessário se você não precisar fazê-lo.
Muito poucas pessoas realmente usam XHTML, no entanto. Você precisa servir seu conteúdo como application/xhtml+xml
para que ele seja interpretado como XHTML, e isso não funcionará em versões antigas do IE - isso também significa que qualquer pequeno erro que você cometa impedirá que sua página seja exibida em navegadores que suportam XHTML. Assim, a maior parte do que se parece com XHTML na web está sendo realmente servido, e interpretado, como HTML. Veja Servindo XHTML como texto/html Considered Harmful para mais informações.
O XML não permite deixar tags abertas, por isso torna <br>
um pouco pior do que os outros dois. Os outros dois são aproximadamente equivalentes com o segundo (<br/>
) preferido para compatibilidade com navegadores mais antigos. Na verdade, o espaço antes de /
é preferido por questão de compatibilidade, mas acho que só faz sentido para tags que tenham atributos. Então eu diria ou <br/>
ou <br />
, o que mais agradar à sua estética.
Resumindo: todos os três são válidos, sendo o primeiro (<br>
) um pouco menos "portátil".
**Editar***: Agora que estamos todos loucos por especificações, acho que vale a pena salientar que, segundo dev.w3.org:
As etiquetas de início consistem no seguinte peças, exactamente na seguinte ordem:
- Um caracter "<".
- O nome da etiqueta do elemento.
- Opcionalmente, um ou mais atributos, cada um dos quais deve ser precedido por um ou mais espaços personagens.
- Opcionalmente, um ou mais caracteres de espaço.
- Opcionalmente, um caractere "/", que só pode estar presente se o elemento é um elemento vazio.
- Um carácter ">".
De acordo com a spec o formulário esperado é <br>
para HTML 5, mas uma barra de fechamento é permitida.