2012-08-15 7 views
6

Estoy escribiendo una página HTML y noté que las etiquetas de encabezado HTML no son exactamente consistentes. Algunos de ellos requieren etiquetas de cierre y otros no.¿Por qué "script" requiere la etiqueta de cierre pero "meta" no?

Por ejemplo, script etiqueta requiere una etiqueta de cierre pero meta no. Ahora me pregunto ¿por qué?

+0

http://stackoverflow.com/a/206409/362536 – Brad

+1

Ver aquí: [http://stackoverflow.com/questions/69913/why-dont-self-closing-script -tags-trabajo] [1] [1]: http://stackoverflow.com/questions/69913/why-dont-self-closing-script-tags-work – Oriol

+2

los enlaces de arriba se refieren a todas las sintaxis de etiqueta de cierre automático (un concepto de XML), en lugar de abordar por qué el script no está definido como VACÍO (y por lo tanto requiere un cierre explícito). – Quentin

Respuesta

2

creo que es sólo una razón arbitraria que tiene que ver con el sistema que el sistema actual se construyó sobre ...

"Por si alguien tiene curiosidad, la razón última es que HTML fue originalmente un dialecto de SGML , que es el extraño hermano mayor de XML. En SGML-land, las etiquetas pueden especificarse en la DTD como de cierre automático (por ejemplo, BR, HR, ENTRADA), implícitamente cerradas (por ejemplo, P, LI, TD) o pueden cerrarse explícitamente (p. ej. TABLE, DIV, SCRIPT). XML, por supuesto, no tiene ningún concepto de esto ".

de: https://stackoverflow.com/a/3327807/773263

9

La etiqueta script no es una etiqueta vacía (no cerrada) porque a veces contiene contenido (código JavaScript), pero la etiqueta meta nunca lo hace.
Hay dos formas de poner Javascript en una página web. La primera forma está incluyendo un archivo externo:

<script src="path/to/my/script.js"></script> 

La segunda manera es poner el Javascript justo dentro del archivo HTML, como esto:

<script> 
    Javascript goes here 
</script> 

Así que a veces, los script tiene que tener contenido. Pero la etiqueta meta, por otro lado, solo necesita proporcionar una pequeña cantidad de información sobre la página actual, por lo que una etiqueta vacía es suficiente.

+1

A punto de publicar el mismo responder. Técnicamente, algunos navegadores seguirán funcionando con etiquetas de script de cierre automático, pero es una mala práctica usarlos. – KingCronus

Cuestiones relacionadas