2012-08-02 21 views
10

¿Cuál es la diferencia entre los términos "obsoleto" y "obsoleto" con respecto a HTML? Parece que veo muchos elementos marcados como "obsoletos" en HTML5 ...HTML obsoleto frente a obsoleto

+0

Solo quería mencionar que hice un bookmarklet para eliminar los atributos obsoletos de su marcado al vuelo y que escupe la fuente 'generada' para que pueda ver lo que necesita deshacerse de su código. Sientase libre de usarlo. http://keithwyland.github.com/attrebuke/ – keithwyland

Respuesta

10

En la especificación de HTML 4.01, la cláusula 4.1 Definitions define "obsoleto" y "en desuso" como términos técnicos. En resumen, una característica obsoleta es algo que no debería usar, pero los navegadores deberían seguir apoyándola. Una característica obsoleta es algo que se acaba de enumerar con fines históricos, no está definido, y no se requiere compatibilidad con el navegador (aunque en la práctica todavía existe). HTML 4.01 declara la mayoría de los viejos elementos y atributos de presentación como obsoletos. Solo algunos pocos elementos de poca importancia se declaran obsoletos allí.

En el borrador del W3C HTML5, la terminología es diferente. No utiliza la palabra "en desuso" en absoluto (excepto cuando se refiere al uso de esta palabra en HTML 4.01). No define "obsoleto" como un término técnico (como aplicable a las características de HTML), pero usa mucho la palabra. La palabra se define implícitamente en la sección 11 Obsolete features. El borrador dice, con tonos y especialidades que varían en función de las características, que los autores no usen características obsoletas, sino que espera que los navegadores las sigan apoyando. También contiene descripciones detalladas de su sintaxis y semántica, en parte aún más detalladas que en especificaciones anteriores.

En el borrador de HTML5, la mayoría de las características obsoletas también se clasifican como "no conformes", con la afirmación de que "no deben ser utilizadas por los autores". Estas funciones cubren la mayoría de las características que están en desuso en HTML 4.01, y algunas más, incluidas las características que no estaban en absoluto en HTML 4.01.

Por ejemplo, el elemento font está en desuso en HTML 4.01, obsoleto en HTML5. Por lo tanto, en principio, HTML 4.01 no debe usar, HTML5 dice que no debe usarlo (y los validadores HTML5 deben emitir un mensaje de error, no solo una advertencia). En la práctica, la diferencia es menor, principalmente solo una cuestión de principios.Los navegadores aún deben analizar el elemento y agregarlo al árbol de documentos, y se espera que lo implementen como antes.

+0

¡Gracias! ¡Eso fue increíblemente útil! –

+0

Cualquier referencia a su última oración "Todavía se requieren navegadores para soportar el elemento."? – Pacerier

+0

@Pacerier, cláusula [11.3.4 Otros elementos, atributos y API] (http://www.w3.org/TR/html5/obsolete.html#other-elements--attributes-and-apis) dice: "El el elemento de fuente debe implementar la interfaz HTMLFontElement. "Esto incluye los atributos anteriores. Cláusula [10.3.4 Fraseando el contenido] (http://www.w3.org/TR/html5/rendering.html#phrasing-content-0) describe el efecto visual. Es cierto que esto es solo "representación sugerida", por lo que voy a modificar la redacción; formalmente no es un requisito sino una recomendación fuerte. –

0

Obsoleto generalmente significa que ha sido reemplazado por otra cosa.

Desaprobado significa que los desarrollos futuros pueden no ser compatibles.

8

El diccionario cuenta la historia bastante bien:

Deprecated: Expresar desaprobación de.

Obsolete: Ya no se produce ni se usa; fuera de plazo.

Es recomienda que no se utilicen deprecated elements, ya que probablemente no se admiten en el futuro, mientras que obsolete elementos ya se han suspendido por el uso.

+0

Me gusta [esta definición] (http://computer.yourdictionary.com/deprecate) para depreciar mejor. * Para dejar de ser válido u obsoleto al eliminar o marcar el elemento. Cuando se planean borrados comandos o declaraciones en un idioma en futuras versiones del compilador o motor de representación, se dice que están en desuso. Los programadores deberían comenzar a eliminarlos del código fuente en revisiones posteriores de sus programas. * –

0

En su pregunta, hace referencia a una publicación de blog que posteriormente vincula a la especificación W3 con respecto a los elementos obsoletos.

http://www.w3.org/TR/html5/obsolete.html#obsolete

Así como el blog se ha vinculado a elude, elementos obsoletos nunca debería ser utilizado, hay alternativas disponibles. En el caso de los elementos en desuso, los navegadores en general todavía los admiten y los reproducen por compatibilidad con versiones anteriores, pero su página no aprobará la validación de conformidad.