HTML5 ( Lenguaje de marcado de hipertexto 5 ) es un lenguaje de marcado utilizado para estructurar y presentar documentos de hipertexto en la World Wide Web . Fue la quinta y última [4] versión principal de HTML que ahora es una recomendación retirada del World Wide Web Consortium (W3C). La especificación actual se conoce como HTML Living Standard . Lo mantiene el Grupo de Trabajo de Tecnología de Aplicaciones de Hipertexto Web (WHATWG), un consorcio de los principales proveedores de navegadores ( Apple , Google , Mozilla y Microsoft ).
HTML5 se lanzó por primera vez de forma pública el 22 de enero de 2008, [2] con una actualización importante y el estado de "Recomendación del W3C" en octubre de 2014. [5] [6] Sus objetivos eran mejorar el lenguaje con soporte para las últimas multimedia y otras características nuevas; mantener el lenguaje fácilmente legible por los humanos y comprendido consistentemente por computadoras y dispositivos como navegadores web , analizadores , etc., sin la rigidez de XHTML ; y seguir siendo compatible con versiones anteriores de software más antiguo. HTML5 está destinado a subsumir no sólo HTML 4 sino también XHTML1 e incluso el propio HTML DOM Nivel 2. [7]
HTML5 incluye modelos de procesamiento detallados para fomentar implementaciones más interoperables; amplía, mejora y racionaliza el marcado disponible para documentos e introduce marcado e interfaces de programación de aplicaciones (API) para aplicaciones web complejas . [8] Por las mismas razones, HTML5 también es un candidato para aplicaciones móviles multiplataforma porque incluye funciones diseñadas teniendo en cuenta dispositivos de bajo consumo.
Se incluyen muchas características sintácticas nuevas. Para incluir y manejar de forma nativa contenido multimedia y gráfico , se agregaron los nuevos elementos<video>
, <audio>
y ; las secciones expandibles se implementan de forma nativa a través de CSS o JavaScript y en lugar de depender de ellos; y también se agregó soporte para contenido de gráficos vectoriales escalables (SVG) y MathML para fórmulas matemáticas. Para enriquecer el contenido semántico de los documentos , se agregan nuevos elementos de estructura de página como ,,,,,,,, y . Se introdujeron nuevos atributos , se eliminaron algunos elementos y atributos y otros como , y se cambiaron, redefinieron o estandarizaron. Las API y el modelo de objetos de documento (DOM) son ahora partes fundamentales de la especificación HTML5, [8] y HTML5 también define mejor el procesamiento de cualquier documento no válido. [9]<canvas>
<summary>...</summary>
<details>...</details>
<main>
<section>
<article>
<header>
<footer>
<aside>
<nav>
<figure>
<a>
<cite>
<menu>
El Grupo de Trabajo de Tecnología de Aplicaciones de Hipertexto Web (WHATWG) comenzó a trabajar en el nuevo estándar en 2004. En ese momento, HTML 4.01 no se había actualizado desde 2000, [10] y el Consorcio World Wide Web (W3C) estaba centrando los desarrollos futuros en XHTML. 2.0 . En 2009, el W3C permitió que expirara el estatuto del Grupo de Trabajo XHTML 2.0 y decidió no renovarlo. [11]
La Fundación Mozilla y Opera Software presentaron un documento de posición en un taller del World Wide Web Consortium en junio de 2004, [12] centrándose en el desarrollo de tecnologías que sean compatibles con los navegadores existentes, [13] incluyendo un borrador inicial de especificación de Web Forms 2.0. El taller concluyó con una votación (8 a favor, 14 en contra) para continuar trabajando en HTML. [14] Inmediatamente después del taller, se formó WHATWG para comenzar a trabajar basándose en ese documento de posición, y también se anunció un segundo borrador, Aplicaciones Web 1.0. [15] Las dos especificaciones se fusionaron posteriormente para formar HTML5. [16] La especificación HTML5 fue adoptada como punto de partida del trabajo del nuevo grupo de trabajo HTML del W3C en 2007.
Ian Hickson ( Google ) y David Hyatt ( Apple ) de WHATWG produjeron el primer borrador de trabajo público de la especificación del W3C el 22 de enero de 2008. [2]
Si bien algunas características de HTML5 a menudo se comparan con Adobe Flash , las dos tecnologías son muy diferentes. Ambos incluyen funciones para reproducir audio y vídeo dentro de páginas web y para usar gráficos vectoriales escalables . Sin embargo, HTML5 por sí solo no se puede utilizar para animación o interactividad; debe complementarse con CSS3 o JavaScript . Hay muchas capacidades de Flash que no tienen contrapartida directa en HTML5 (consulte Comparación de HTML5 y Flash ). Las capacidades interactivas de HTML5 se convirtieron en un tema de atención de los principales medios de comunicación alrededor de abril de 2010 [17] [18] [19] [20] después de que el entonces director ejecutivo de Apple Inc. , Steve Jobs, publicara una carta pública titulada "Reflexiones sobre Flash" en la que concluía que "Flash ya no es necesario para ver vídeos o consumir cualquier tipo de contenido web" y que "ganarán los nuevos estándares abiertos creados en la era móvil, como HTML5". [21] Esto provocó un debate en los círculos de desarrollo web que sugieren que, si bien HTML5 proporciona una funcionalidad mejorada, los desarrolladores deben considerar el soporte variable del navegador para las diferentes partes del estándar, así como otras diferencias de funcionalidad entre HTML5 y Flash. [22] A principios de noviembre de 2011, Adobe anunció que descontinuaría el desarrollo de Flash para dispositivos móviles y reorientaría sus esfuerzos en el desarrollo de herramientas utilizando HTML5. [23] El 25 de julio de 2017, Adobe anunció que tanto la distribución como el soporte de Flash cesarían a finales de 2020. [24] El propio Adobe descontinuó oficialmente Flash el 31 de diciembre de 2020 y se bloqueó la ejecución de todo el contenido Flash en Flash Player como de 12 de enero de 2021. [25]
El 14 de febrero de 2011, el W3C amplió los estatutos de su Grupo de Trabajo HTML con hitos claros para HTML5. En mayo de 2011, el grupo de trabajo avanzó HTML5 a "Última llamada", una invitación a las comunidades dentro y fuera del W3C para confirmar la solidez técnica de la especificación. El W3C desarrolló un conjunto de pruebas integral para lograr una amplia interoperabilidad para la especificación completa para 2014, que era la fecha prevista para la recomendación. [26] En enero de 2011, WHATWG cambió el nombre de su especificación "HTML5" a HTML Living Standard . Sin embargo, el W3C continuó con su proyecto de lanzar HTML5. [27]
En julio de 2012, WHATWG y W3C decidieron cierto grado de separación. El W3C continuará el trabajo de especificación de HTML5, centrándose en un único estándar definitivo, que WHATWG considera una "instantánea". La organización WHATWG continúa su trabajo con HTML5 como "estándar de vida". El concepto de nivel de vida es que nunca está completo y siempre se actualiza y mejora. Se pueden agregar nuevas funciones, pero la funcionalidad no se eliminará. [28]
En diciembre de 2012, el W3C designó HTML5 como Recomendación candidata. [29] El criterio para avanzar a la Recomendación del W3C es "dos implementaciones 100% completas y totalmente interoperables". [30]
El 16 de septiembre de 2014, el W3C trasladó HTML5 a la recomendación propuesta. [31] El 28 de octubre de 2014, HTML5 se lanzó como recomendación del W3C, [32] completando el proceso de especificación. [5] El 1 de noviembre de 2016, se lanzó HTML 5.1 como recomendación del W3C. [33] El 14 de diciembre de 2017, se lanzó HTML 5.2 como recomendación del W3C. [34]
El W3C retiró HTML5 el 27 de marzo de 2018. [35] Además, el retiro incluyó HTML 4.0, [36] HTML 4.01, [37] XHTML 1.0, [38] y XHTML 1.1. [39] HTML 5.1, HTML 5.2 y HTML 5.3 se retiraron el 28 de enero de 2021, a favor del estándar de vida HTML. [40] [41]
Los cronogramas combinados para las recomendaciones del W3C de HTML5, HTML 5.1, HTML 5.2 y HTML 5.3:
El W3C cedió la autoridad sobre los estándares HTML y DOM a WHATWG el 28 de mayo de 2019, al considerar que tener dos estándares es perjudicial. [47] [48] [49] [4] HTML Living Standard ahora tiene autoridad. Sin embargo, el W3C seguirá participando en el proceso de desarrollo de HTML.
Antes de ceder autoridad, W3C y WHATWG se caracterizaban por trabajar juntos en el desarrollo de HTML5 [11] y, sin embargo, también con propósitos cruzados [28] [5] desde la división de julio de 2012. El estándar "HTML5" del W3C se basaba en instantáneas (HTML5, HTML 5.1, etc.) y era estático, mientras que el "estándar de vida HTML" WHATWG se actualiza continuamente. La relación había sido calificada de "frágil", incluso de "ruptura", [50] y caracterizada por "disputas". [5]
En al menos un caso, concretamente el contenido permitido del elemento, las dos especificaciones se contradecían directamente (a julio de 2018), y la definición del W3C permitía una gama más amplia de usos que la definición del WHATWG. [51] [52]<cite>
[actualizar]
La sección "Introducción" en la especificación WHATWG (editada por Ian "Hixie" Hickson ) es crítica con el W3C, por ejemplo, " Nota: aunque les hemos pedido que dejen de hacerlo, el W3C también vuelve a publicar algunas partes de esta especificación como documentos separados. " En su subsección "Historia", presenta al W3C como resistente a los planes HTML5 originales de Hickson y WHATWG, y luego se subió al carro tardíamente (aunque Hickson también tenía el control de la especificación HTML5 del W3C). De todos modos, indica una división filosófica importante entre las organizaciones: [53]
Durante varios años, ambos grupos trabajaron juntos. En 2011, sin embargo, los grupos llegaron a la conclusión de que tenían objetivos diferentes: el W3C quería publicar una versión "terminada" de "HTML5", mientras que el WHATWG quería seguir trabajando en un estándar de vida para HTML, manteniendo continuamente la especificación. en lugar de congelarlo en un estado con problemas conocidos y agregar nuevas funciones según sea necesario para evolucionar la plataforma.
Desde entonces, WHATWG ha estado trabajando en esta especificación (entre otras), y el W3C ha estado copiando las correcciones realizadas por WHATWG en su bifurcación del documento (que también tiene otros cambios).
Las dos entidades firmaron un acuerdo para trabajar juntas en una versión única de HTML el 28 de mayo de 2019. [54]
Además de la contradicción en el elemento mencionado anteriormente, otras diferencias entre los dos estándares incluyen al menos las siguientes, a septiembre de 2018 :<cite>
[actualizar]
La siguiente tabla proporciona datos de Mozilla Development Network sobre la compatibilidad con los principales navegadores, a septiembre de 2018 [actualizar], de elementos HTML exclusivos de uno de los estándares:
El W3C propuso una mayor dependencia de la modularidad como parte clave del plan para lograr un progreso más rápido, lo que significa identificar características específicas, ya sean propuestas o ya existentes en la especificación, y avanzarlas como especificaciones separadas. Algunas tecnologías que se definieron originalmente en HTML5 ahora se definen en especificaciones separadas:
Algunas funciones que se eliminaron de la especificación HTML5 original se han estandarizado por separado como módulos, como Microdata y Canvas . Las especificaciones técnicas introducidas como extensiones HTML5, como el marcado Polyglot, también se han estandarizado como módulos. Algunas especificaciones del W3C que originalmente eran especificaciones separadas se han adaptado como extensiones o características de HTML5, como SVG . Algunas características que podrían haber ralentizado la estandarización de HTML5 se estandarizaron o se estandarizarán como próximas especificaciones.
HTML5 introduce elementos y atributos que reflejan el uso típico en los sitios web modernos. Algunos de ellos son reemplazos semánticos para usos comunes de elementos genéricos de bloque ( <div>
) y en línea ( <span>
), por ejemplo <nav>
(bloque de navegación del sitio web), <footer>
(generalmente refiriéndose a la parte inferior de la página web o a las últimas líneas del código HTML), o <audio>
y <video>
en lugar de <object>
. [91] [92] [93]
Algunos elementos obsoletos de HTML 4.01 se han eliminado, incluidos elementos puramente de presentación como <font>
y <center>
, cuyos efectos han sido reemplazados durante mucho tiempo por las hojas de estilo en cascada más capaces . [94] También hay un énfasis renovado en la importancia del JavaScript del lado del cliente utilizado para crear páginas web dinámicas . [ cita necesaria ]
La sintaxis HTML5 ya no se basa en SGML [95] [96] a pesar de la similitud de su marcado. Sin embargo, ha sido diseñado para ser compatible con el análisis común de versiones anteriores de HTML. Viene con una nueva línea introductoria que parece una declaración de tipo de documento SGML , que activa el modo de representación<!DOCTYPE html>
compatible con los estándares . [97]
Desde el 5 de enero de 2009, HTML5 también incluye Web Forms 2.0 , una especificación WHATWG previamente separada. [98] [99]
Además de especificar el marcado, HTML5 especifica interfaces de programación de aplicaciones (API) de secuencias de comandos que se pueden utilizar con JavaScript . [101] Las interfaces del Modelo de objetos de documento (DOM) existentes se amplían y las características de facto se documentan. También hay nuevas API, como:
No todas las tecnologías anteriores están incluidas en la especificación HTML5 del W3C, aunque sí en la especificación HTML WHATWG. [113] Algunas tecnologías relacionadas, que no forman parte ni de la especificación HTML5 del W3C ni de la especificación HTML WHATWG, son las siguientes. El W3C publica especificaciones para estos por separado:
HTML5 no puede proporcionar animación dentro de las páginas web. Es necesario JavaScript o CSS3 adicional para animar elementos HTML. La animación también es posible usando JavaScript y HTML 4 [124] [ verificación fallida ] , y dentro de elementos SVG a través de SMIL , aunque el soporte del navegador para este último sigue siendo desigual a partir de 2011 [actualizar].
Los documentos XML deben entregarse con un tipo de medio XML de Internet (a menudo llamado " tipo MIME ") como application/xhtml+xml
o application/xml
, [101] y deben ajustarse a una sintaxis estricta y bien formada de XML. XHTML5 son simplemente datos HTML5 serializados en XML (es decir, HTML5 restringido a los estrictos requisitos de XHTML, por ejemplo, sin etiquetas abiertas), enviados con uno de los tipos de medios XML. El HTML que ha sido escrito para cumplir con las especificaciones HTML y XHTML y, por lo tanto, produce el mismo árbol DOM, ya sea analizado como HTML o XML, se conoce como marcado políglota . [125]
No hay DTD para XHTML5. [126]
HTML5 está diseñado para que los navegadores antiguos puedan ignorar con seguridad las nuevas construcciones HTML5. [8] A diferencia de HTML 4.01, la especificación HTML5 proporciona reglas detalladas para lexing y parsing , con la intención de que los navegadores compatibles produzcan los mismos resultados al analizar la sintaxis incorrecta. [127] Aunque HTML5 ahora define un comportamiento consistente para los documentos de " sopa de etiquetas ", esos documentos no se ajustan al estándar HTML5. [127]
Según un informe publicado el 30 de septiembre de 2011, 34 de los 100 sitios web más importantes del mundo utilizaban HTML5: la adopción liderada por los motores de búsqueda y las redes sociales . [128] Otro informe publicado en agosto de 2013 ha demostrado que 153 de las empresas estadounidenses Fortune 500 implementaron HTML5 en sus sitios web corporativos. [129]
Desde 2014, HTML5 es compatible, al menos parcialmente, con los motores de diseño más populares.
La siguiente es una lista superficial de diferencias y algunos ejemplos específicos.
text/html
article
, aside
, audio
, bdi
, canvas
, command
, data
, datalist
, details
, , embed
, figcaption
, , figure
, footer
, header
, keygen
, mark
, meter
, nav
, output
, progress
, rp
, rt
, ruby
, section
, source
, summary
, time
, track
,video
wbr
dates and times
, email
, url
, search
, number
, range
, tel
, color
[130]charset
(en meta
), async
(en script
)id
, tabindex
, hidden
, data-*
(atributos de datos personalizados)acronym
, applet
, basefont
, big
, center
, dir
, font
, frame
, frameset
, , isindex
, noframes
,strike
tt
El Grupo de Trabajo W3C publica "Diferencias HTML5 de HTML 4", [131] que proporciona un resumen completo de las adiciones, eliminaciones y cambios entre HTML5 y HTML4.
El 18 de enero de 2011, el W3C introdujo un logotipo para representar el uso o interés en HTML5. A diferencia de otras insignias emitidas anteriormente por el W3C, no implica validez ni conformidad con un determinado estándar. A partir del 1 de abril de 2011, este logo es oficial. [132]
Cuando lo presentó inicialmente al público, el W3C anunció el logotipo HTML5 como una "identidad visual de propósito general para un amplio conjunto de tecnologías web abiertas, incluidas HTML5, CSS , SVG, WOFF y otras". [133] Algunos defensores de los estándares web, incluido The Web Standards Project , criticaron esa definición de "HTML5" como término general, señalando la confusión de la terminología y el potencial de falta de comunicación. [133] Tres días después, el W3C respondió a los comentarios de la comunidad y cambió la definición del logotipo, eliminando la enumeración de tecnologías relacionadas. [134] El W3C luego dijo que el logotipo "representa HTML5, la piedra angular de las aplicaciones web modernas". [132]
Los actores de la industria, incluidos la BBC , Google, Microsoft y Apple Inc. , han estado presionando para que se incluyan Encrypted Media Extensions (EME), [135] [136] [137] [138] [139] una forma de gestión de derechos digitales (DRM) . ), en el estándar HTML5. A finales de 2012 y principios de 2013, 27 organizaciones [140], incluida la Free Software Foundation [141], han iniciado una campaña contra la inclusión de la gestión de derechos digitales en el estándar HTML5. [142] [143] Sin embargo, a finales de septiembre de 2013, el Grupo de Trabajo HTML del W3C decidió que las Extensiones de Medios Cifrados, una forma de DRM, estaban "dentro del alcance" y potencialmente se incluirán en el estándar HTML 5.1. [144] [145] El "Estándar de vida HTML" de WHATWG continuó desarrollándose sin propuestas habilitadas para DRM. [145]
Manu Sporny, miembro del W3C , afirmó que EME no solucionaría el problema que debía abordar. [146] Los opositores señalan que EME en sí es sólo una arquitectura para un mecanismo de complemento DRM. [147]
Los habilitadores iniciales de DRM en HTML5 fueron Google [148] y Microsoft. [149] Los partidarios también incluyen a Adobe. [150] El 14 de mayo de 2014, Mozilla anunció planes para admitir EME en Firefox , el último navegador importante que evita DRM. [151] [152] Andreas Gal de Mozilla lo calificó como "un paso difícil e incómodo" y explicó que las versiones futuras de Firefox seguirían siendo de código abierto pero se enviarían con una zona de pruebas diseñada para ejecutar un módulo de descifrado de contenido desarrollado por Adobe, [151] más tarde. fue reemplazado por el módulo Widevine de Google , que es mucho más adoptado por los proveedores de contenido. Aunque prometió "trabajar en soluciones alternativas", el presidente ejecutivo de Mozilla, Mitchell Baker, afirmó que negarse a implementar EME habría logrado poco más que convencer a muchos usuarios de que cambiaran de navegador. [152] Esta decisión fue condenada por Cory Doctorow y la Free Software Foundation . [153] [154]
En diciembre de 2023, el W3C cambió de opinión sobre EME y afirmó: "Encrypted Media Extensions (EME) brinda mayor interoperabilidad, mejor privacidad, seguridad, accesibilidad y experiencia de usuario al ver películas y TV en la Web". [155]
HTML4 se convirtió en una recomendación del W3C en 1997. Si bien continúa sirviendo como una guía aproximada para muchas de las características principales de HTML, no proporciona suficiente información para crear implementaciones que interoperen entre sí y, lo que es más importante, con el contenido web. Lo mismo ocurre con XHTML1, que define una serialización XML para HTML4, y DOM Nivel 2 HTML, que define las API de JavaScript tanto para HTML como para XHTML. HTML reemplaza estos documentos.
Este documento está obsoleto.
¿Es este el logotipo "oficial" del W3C para HTML5? Sí, a partir del 1 de abril de 2011.