He intentado comprobar otras respuestas, pero sigo estando confundido, especialmente después de ver referencia de W3schools sobre HTML 5.
Pensaba que HTML 4.01 se suponía que "permitía" que las etiquetas simples fueran sólo <img>
y <br>
. Luego llegó XHTML con <img />
y <br />
(donde alguien dijo que el espacio está ahí para los navegadores más antiguos).
Ahora me pregunto cómo debo formatear mi código cuando practico HTML 5.
¿Es <br>
, <br/>
o <br />
?
Es suficiente con <br>
.
Las otras formas están ahí para la compatibilidad con XHTML; para que sea posible escribir el mismo código que XHTML, y que también funcione como HTML. Algunos sistemas que generan HTML pueden estar basados en generadores XML, y por lo tanto no tienen la capacidad de producir sólo una etiqueta <br>
; si está usando un sistema de este tipo, está bien usar <br/>
, sólo que no es necesario si no necesita hacerlo.
Sin embargo, muy poca gente utiliza XHTML. Tienes que servir tu contenido como application/xhtml+xml
para que sea interpretado como XHTML, y eso no funcionará en las versiones antiguas de IE - también significará que cualquier pequeño error que cometas impedirá que tu página se muestre en los navegadores que sí soportan XHTML. Por lo tanto, la mayor parte de lo que parece XHTML en la web está siendo servido, e interpretado, como HTML. Consulte Servir XHTML como text/html se considera perjudicial para obtener más información.
XML no permite dejar las etiquetas abiertas, por lo que <br>
es un poco peor que las otras dos. Las otras dos son más o menos equivalentes, siendo la segunda (<br/>
) la preferida por compatibilidad con los navegadores más antiguos. En realidad, el espacio antes de /
es preferible por razones de compatibilidad, pero creo que sólo tiene sentido para las etiquetas que tienen atributos. Así que yo diría que o bien <br/>
o bien <br />
, lo que más le guste a su estética.
Resumiendo: las tres son válidas, siendo la primera (<br>
) un poco menos "portable".
Editar: Ahora que estamos locos por las especificaciones, creo que vale la pena señalar que según dev.w3.org:
Las etiquetas de inicio constan de las siguientes partes, exactamente en el siguiente orden:
- Un carácter "<".
- El nombre de la etiqueta del elemento.
- Opcionalmente, uno o más atributos, cada uno de los cuales debe estar precedido por uno o más caracteres de espacio caracteres de espacio.
- Opcionalmente, uno o más caracteres de espacio.
- 5. Opcionalmente, un carácter "/", que puede estar presente sólo si el elemento es un elemento vacío. elemento es un elemento vacío.
- Un carácter ">".