Estoy confundido. Un compañero de trabajo me habló sobre la posibilidad de que las tags que terminan en />
, como
, todavía se puedan usar en HTML5. Pensé que solo se podía usar el estilo. Toda la “conversación” a través de Internet se trata de usar lo último.
¿Podría alguien por favor explicarme esto? Esto parece muy confuso y mal documentado.
Y esto nos lleva a otra pregunta: ¿se considera HTML 5 como XML bien formado?
No. Contra-ejemplos:
Estos son HTML5 válido pero XHTML5 no válido:
Algunas tags de cierre se pueden omitir:
First
Second
Ver: P-end-tag ( p>) no es necesario en HTML
script
escape magic:
Ver: ¿Qué es CDATA en HTML?
Atributos sin valores (atributos booleanos):
Ver: valor correcto para el atributo desactivado
Atributos sin comillas, por ejemplo:
Ver: ¿ En XHTML 1.0 Strict do los valores de los atributos deben estar rodeados de comillas?
Elementos abiertos implícitos y múltiples elementos de nivel superior.
Algunos elementos HTML se crean implícitamente. Por ejemplo html
. Esto permite que el HTML tenga “múltiples elementos de nivel superior”:
a a
Ver: ¿Es necesario escribir tags HEAD, BODY y HTML?
XHTML válido que es HTML no válido:
CDATA
construye con tags inválidas dentro
ENTITY
y otras construcciones de exclamación, que permiten mil millones de risas: ¿Cómo se ríen los mil millones de ataques XML DoS?
HTML válido y XHTML pero con diferentes significados:
£
, ©
), XML tiene solo 5 ( quot
, amp
; apos
, lt
, gt
). Hay una serialización XML de la misma, llamada XHTML5 . Básicamente, puede usar HTML5 (serialización HTML) o XHTML5 (serialización XML). El borrador de la especificación dice que HTML5 “es el formato sugerido para la mayoría de los autores”, principalmente por las mismas razones por las que la gente recomienda text/html
para XHTML 1.1.
Puede marcar su página como HTML5 válido y XHTML5: http://www.w3.org/TR/html-polyglot/
El marcado Polyglot que cumple con un conjunto bien definido de restricciones se interpreta como compatible, independientemente de si se procesan como HTML o como XHTML, según la especificación HTML5.
El documento básico podría verse así:
Por supuesto, debe seguir algunas reglas adicionales (por ejemplo, no usar el elemento noscript
), que se describen en el borrador de trabajo vinculado.
HTML5 se puede escribir con o sin barras de cierre automático; está destinado a ser compatible con versiones anteriores tanto del código HTML 4.01 como del código XHTML 1.0, por lo que es fácil convertir el código en HTML5 válido. Hay una serialización XML llamada XHTML5, pero para propósitos de compatibilidad con navegadores IE, no se recomienda su uso. Por lo tanto, técnicamente, HTML5 no se considera un XML bien formado.
Bajo ninguna condición debe esperar que cualquier documento html (sin importar la versión) sea ” xml bien formado”
html! = xml.
Es una especificación diferente con diferentes sugerencias (estoy evitando a propósito la palabra “reglas” aquí) sobre cómo debe interpretarse.
La especificación de HTML 5 tiene suficiente “hazlo de esta manera, pero está bien si no lo haces”, menea las afirmaciones de que es sorprendente que ninguno de los navegadores muestren lo mismo.