En HTML5, hay elementos vacíos. ¿Por qué no se llaman etiquetas de cierre automático? ¿Hay una diferencia? Si es así, ¿qué es?

El cierre automático fue introducido y requerido por estrictos flujos de trabajo XHTML / XML .

Los elementos vacíos son típicamente elementos que nunca contendrán ningún otro contenido. Por lo tanto, no requiere envolverlo con una etiqueta de apertura y cierre. Es solo una cosa, caer directamente en el flujo. Una de las primeras etiquetas HTML vacías es < HR >. Obtendrá una línea horizontal, tal vez con algunos atributos, pero eso es todo. Lo mismo ocurre con el < IMG > a pesar de que su fuente se refiere a un bloque de contenido muy real y visual. Pero para el HTML , es solo una cosa, ser arrojado.

Con el auge de XHTML , se requería que todas las etiquetas se abrieran y cerraran, porque el formato XML espera una estructura compatible con DTD . Por lo tanto, cada elemento debe tenerse en cuenta, incluso si el elemento está vacío, o no está vacío, pero está vacío. Para diferenciar entre elementos vacíos y vacíos, XML introdujo el método de cierre automático (mediante una barra diagonal dentro de la etiqueta).

Ahora con HTML5 , volvemos a la pista HTML menos estricta, por lo que está permitido usar elementos vacíos sin cierre nuevamente. (La barra inclinada final es completamente opcional). El uso del cierre automático no es válido, pero se supone que los navegadores son indulgentes con todo tipo de codificación html incorrecta (como usar el cierre automático u olvidar cerrar una etiqueta normal).

Puede ver mucha confusión y explicaciones en estas discusiones:
¿Son válidas las etiquetas de cierre automático (no nulo) en HTML5?
Etiquetas de cierre automático (elementos vacíos) en HTML5