tipos para paginas lista hojas etiquetas estilos estilo enlazar ejemplos codigos html css w3c-validation

html - para - lista de codigos css



¿Por qué no se pueden validar las etiquetas<style> dentro de la etiqueta HTML<body> en W3C? (5)

Posible duplicado:
¿Tiene que <STYLE> estar en la <HEAD> de un documento HTML?

Soy parte de un equipo que ha desarrollado un sistema CMS.

Nos gustaría poder insertar etiquetas <style> dentro del <body> de una página HTML de manera que se valide a los estándares W3C, ya que la validación es un requisito de nuestro consultor SEO.

La etiqueta de estilo funciona perfectamente bien dentro de la etiqueta del cuerpo en todos los navegadores, pero se niega a validar.


¿Contra qué estás validando? HTML, XHTML Transitional, XHTML estricto?

Probablemente porque los estilos en línea no son válidos en XHTML Strict. Necesitas usar class="foo" lugar, y definir foo dentro de un archivo CSS.


La DTD de HMTL no lo permite, por lo tanto, no se valida. No importa, todos los navegadores lo soportan de todos modos.



Literalmente, una etiqueta <style> dentro de la etiqueta <body> no se validará porque todas las especificaciones HTML dicen que no puede estar allí.

En cuanto a por qué las especificaciones dicen eso, no lo sé. El requisito aún está en la última especificación HTML, y recientemente se han permitido las cosas que funcionan en el mundo real que estaban prohibidas por las especificaciones anteriores (por ejemplo, omitiendo el atributo de type en la etiqueta <style> ), así que supongo que debe haber una razón por la cual el requisito sigue ahí.

Me imagino que hay algunos casos en los que la inclusión de una etiqueta <style> en el cuerpo hace que la representación de la página sea más difícil / lenta / menos confiable.


<style> elementos <style> contienen metadatos que se aplican a todo el documento. Esto es lo que el elemento <head> fue diseñado para contener. Simplemente tiene sentido para ellos vivir en la cabeza, de modo que ahí es donde la especificación requiere que estén.