HTML5 ( Hypertext Markup Language 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 . Es mantenida por el Web Hypertext Application Technology Working Group (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 importante actualización 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 funciones multimedia y otras nuevas; mantener el lenguaje fácilmente legible por humanos y consistentemente entendido 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 solo HTML 4 sino también XHTML1 e incluso el propio HTML de nivel 2 del DOM . [7]
HTML5 incluye modelos de procesamiento detallados para fomentar implementaciones más interoperables; extiende, 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 características diseñadas teniendo en cuenta dispositivos de bajo consumo.
Se incluyen muchas nuevas características sintácticas . 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 y en lugar de depender de CSS o JavaScript; 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 agregaron 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) ahora son 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 el estatuto del Grupo de Trabajo de XHTML 2.0 expirara 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 en base a ese documento de posición, y también se anunció un segundo borrador, Web Applications 1.0. [15] Las dos especificaciones se fusionaron más tarde para formar HTML5. [16] La especificación HTML5 fue adoptada como el 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]
Muchos navegadores web lanzados después de 2009 admiten HTML5, incluidos Google Chrome 3.0, Safari 3.1, Firefox 3.5 , Opera 10.5, Internet Explorer 9 y posteriores.
Aunque algunas características de HTML5 suelen compararse con Adobe Flash , las dos tecnologías son muy diferentes. Ambas incluyen funciones para reproducir audio y vídeo dentro de páginas web y para utilizar 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 un equivalente directo en HTML5 (consulte Comparación de HTML5 y Flash ). Las capacidades interactivas de HTML5 se convirtieron en un tema de atención de los medios de comunicación en abril de 2010 [17] [18] [19] [20] después de que el entonces director ejecutivo de Apple Inc., Steve Jobs, emitiera 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 "los nuevos estándares abiertos creados en la era móvil, como HTML5, ganarán". [21] Esto desató un debate en los círculos de desarrollo web que sugería que, si bien HTML5 proporciona una funcionalidad mejorada, los desarrolladores deben considerar la compatibilidad variable de los navegadores con 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 fines de 2020. [24] Adobe mismo descontinuó oficialmente Flash el 31 de diciembre de 2020 y todo el contenido Flash fue bloqueado para ejecutarse en Flash Player a partir del 12 de enero de 2021. [25]
El 14 de febrero de 2011, el W3C amplió el estatuto de su Grupo de Trabajo HTML con hitos claros para HTML5. En mayo de 2011, el grupo de trabajo adelantó HTML5 a la "última convocatoria", 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 en 2014, que era la fecha objetivo para la recomendación. [26] En enero de 2011, el WHATWG renombró su especificación "HTML5" como HTML Living Standard . No obstante, el W3C continuó con su proyecto para lanzar HTML5. [27]
En julio de 2012, el WHATWG y el W3C decidieron separarse en cierta medida. El W3C continuará con el trabajo de especificación de HTML5, centrándose en un único estándar definitivo, que el WHATWG considera una "instantánea". La organización WHATWG continúa trabajando con HTML5 como un "estándar vivo". El concepto de un estándar vivo es que nunca está completo y siempre se actualiza y mejora. Se pueden agregar nuevas características, pero no se eliminará ninguna funcionalidad. [28]
En diciembre de 2012, el W3C designó a HTML5 como una Recomendación candidata. [29] El criterio para avanzar a la categoría de 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 categoría de Recomendación propuesta. [31] El 28 de octubre de 2014, HTML5 se publicó como Recomendación del W3C, [32] con lo que se completó el proceso de especificación. [5] El 1 de noviembre de 2016, HTML 5.1 se publicó como Recomendación del W3C. [33] El 14 de diciembre de 2017, HTML 5.2 se publicó 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 fueron retirados el 28 de enero de 2021, en favor del estándar de vida HTML. [40] [41]
Los plazos combinados para las recomendaciones del W3C de HTML5, HTML 5.1, HTML 5.2 y HTML 5.3:
El 28 de mayo de 2019, el W3C cedió la autoridad sobre los estándares HTML y DOM al WHATWG , ya que consideró que tener dos estándares es perjudicial. [47] [48] [49] [4] El HTML Living Standard es ahora la autoridad. Sin embargo, el W3C seguirá participando en el proceso de desarrollo de HTML.
Antes de la cesión de autoridad, se había caracterizado a W3C y WHATWG como colaboradores en el desarrollo de HTML5 [11] , aunque también con objetivos contrapuestos [28] [5] desde la división en julio de 2012. El estándar "HTML5" de W3C se basaba en instantáneas (HTML5, HTML 5.1, etc.) y era estático, mientras que el "estándar de vida HTML" de WHATWG se actualiza continuamente. La relación había sido descrita como "frágil", incluso como una "ruptura", [50] y caracterizada por "disputas". [5]
En al menos un caso, a saber, el contenido permitido del elemento, las dos especificaciones se contradecían directamente entre sí (a julio de 2018), y la definición del W3C permitía una gama más amplia de usos que la definición de WHATWG. [51] [52]<cite>
[actualizar]
La sección "Introducción" de 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 republica algunas partes de esta especificación como documentos separados". En su subsección "Historia" describe al W3C como resistente a los planes originales de Hickson y WHATWG para HTML5, y que luego se unió a la tendencia tardíamente (aunque Hickson también controlaba la especificación HTML5 del W3C). De todas formas, indica una importante división filosófica entre las organizaciones: [53]
Durante varios años, ambos grupos trabajaron juntos. Sin embargo, en 2011, 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 vivo para HTML, manteniendo continuamente la especificación en lugar de congelarla en un estado con problemas conocidos y añadiendo nuevas características según fuera necesario para hacer evolucionar la plataforma.
Desde entonces, el WHATWG ha estado trabajando en esta especificación (entre otras), y el W3C ha estado copiando las correcciones realizadas por el WHATWG en su bifurcación del documento (que también tiene otros cambios).
Las dos entidades firmaron un acuerdo para trabajar juntas en una única versión de HTML el 28 de mayo de 2019. [54]
Además de la contradicción en el elemento mencionado anteriormente, otras diferencias entre ambas normas incluyen al menos las siguientes, a septiembre de 2018 :<cite>
[actualizar]
La siguiente tabla proporciona datos de la Red de Desarrollo de Mozilla 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 avanzar más rápido, lo que significa identificar características específicas, ya sean propuestas o ya existentes en la especificación, y presentarlas como especificaciones independientes. Algunas tecnologías que originalmente se definieron en el propio HTML5 ahora se definen en especificaciones independientes:
Algunas características 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 W3C que originalmente eran especificaciones independientes se han adaptado como extensiones o características HTML5, como SVG . Algunas características que podrían haber ralentizado la estandarización de HTML5 se estandarizaron o se estandarizarán como especificaciones futuras.
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 block ( <div>
) e inline ( <span>
), por ejemplo <nav>
(bloque de navegación del sitio web), <footer>
(que generalmente se refiere a la parte inferior de la página web o a las últimas líneas del código HTML), o <audio>
and <video>
en lugar de <object>
. [92] [93] [94]
Algunos elementos obsoletos de HTML 4.01 se han eliminado, incluidos elementos puramente de presentación como <font>
and <center>
, cuyos efectos han sido reemplazados hace mucho tiempo por las hojas de estilo en cascada más capaces . [95] También hay un énfasis renovado en la importancia del JavaScript del lado del cliente utilizado para crear páginas web dinámicas . [ cita requerida ]
La sintaxis HTML5 ya no se basa en SGML [96] [97] a pesar de la similitud de su marcado. Sin embargo, se ha diseñado para que sea compatible con 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 estándares . [98]
Desde el 5 de enero de 2009, HTML5 también incluye Web Forms 2.0 , una especificación WHATWG previamente independiente . [99] [100]
Además de especificar el marcado, HTML5 especifica interfaces de programación de aplicaciones (API) de scripting que se pueden usar con JavaScript . [102] Las interfaces del Modelo de objetos de documento (DOM) existentes se amplían y se documentan las características de facto . También hay nuevas API, como:
No todas las tecnologías mencionadas anteriormente están incluidas en la especificación HTML5 del W3C, aunque sí en la especificación HTML WHATWG. [114] 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 ellas por separado:
HTML5 no puede proporcionar animación dentro de las páginas web. Se necesita JavaScript o CSS3 adicional para animar elementos HTML. La animación también es posible utilizando JavaScript y HTML 4 [125] [ verificación fallida ] , y dentro de elementos SVG a través de SMIL , aunque la compatibilidad de los navegadores con este último sigue siendo desigual a partir de 2011 [actualizar].
Los documentos XML deben servirse con un tipo de medio de Internet XML (a menudo llamado " tipo MIME ") como application/xhtml+xml
o application/xml
, [102] y deben cumplir con la 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, no tener ninguna etiqueta sin cerrar), enviados con uno de los tipos de medios XML. El HTML que se ha escrito para cumplir con las especificaciones HTML y XHTML y, por lo tanto, produce el mismo árbol DOM ya sea que se analice como HTML o XML se conoce como marcado políglota . [126]
No existe DTD para XHTML5. [127]
HTML5 está diseñado para que los navegadores antiguos puedan ignorar de forma segura las nuevas construcciones HTML5. [8] A diferencia de HTML 4.01, la especificación HTML5 proporciona reglas detalladas para el análisis léxico y sintáctico , con la intención de que los navegadores compatibles produzcan los mismos resultados al analizar la sintaxis incorrecta. [128] Aunque HTML5 ahora define un comportamiento consistente para los documentos de " sopa de etiquetas ", esos documentos no se ajustan al estándar HTML5. [128]
Según un informe publicado el 30 de septiembre de 2011, 34 de los 100 sitios web más importantes del mundo utilizaban HTML5, una adopción liderada por los motores de búsqueda y las redes sociales . [129] Otro informe publicado en agosto de 2013 ha demostrado que 153 de las empresas Fortune 500 de EE. UU. implementaron HTML5 en sus sitios web corporativos. [130]
Desde 2014, HTML5 es compatible, al menos parcialmente, con la mayoría de los motores de diseño más populares.
A continuación se presenta una lista somera 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
[131]charset
(on meta
), async
(on 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 del W3C publica "Diferencias entre HTML5 y HTML 4", [132] que proporciona un esquema completo de las adiciones, eliminaciones y cambios entre HTML5 y HTML4.
El 18 de enero de 2011, el W3C presentó un logotipo para representar el uso o el interés en HTML5. A diferencia de otras insignias emitidas anteriormente por el W3C, no implica validez o conformidad con un estándar determinado. A partir del 1 de abril de 2011, este logotipo es oficial. [133]
Cuando se 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, incluyendo HTML5, CSS , SVG, WOFF y otras". [134] Algunos defensores de estándares web, incluido The Web Standards Project , criticaron esa definición de "HTML5" como un término general, señalando la confusión de la terminología y el potencial de falta de comunicación. [134] 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. [135] El W3C luego dijo que el logotipo "representa HTML5, la piedra angular de las aplicaciones web modernas". [133]
Los actores de la industria, incluidos la BBC , Google, Microsoft y Apple Inc., han estado presionando para la inclusión de las extensiones de medios encriptados (EME), [136] [137] [138] [139] [140] una forma de gestión de derechos digitales (DRM), en el estándar HTML5. A fines de 2012 y principios de 2013, 27 organizaciones [141] incluida la Free Software Foundation [142] han iniciado una campaña contra la inclusión de la gestión de derechos digitales en el estándar HTML5. [143] [144] Sin embargo, a fines de septiembre de 2013, el Grupo de trabajo HTML del W3C decidió que las extensiones de medios encriptados, una forma de DRM, estaban "dentro del alcance" y potencialmente se incluirían en el estándar HTML 5.1. [145] [146] El "Estándar de vida HTML" de WHATWG continuó desarrollándose sin propuestas habilitadas para DRM. [146]
Manu Sporny, miembro del W3C , dijo que EME no resolvería el problema que se supone que debía abordar. [147] Los opositores señalan que EME en sí mismo es solo una arquitectura para un mecanismo de complemento DRM. [148]
Los primeros facilitadores de DRM en HTML5 fueron Google [149] y Microsoft. [150] Entre los partidarios también se encuentra Adobe. [151] El 14 de mayo de 2014, Mozilla anunció planes para soportar EME en Firefox , el último navegador importante en evitar DRM. [152] [153] Al llamarlo "un paso difícil e incómodo", Andreas Gal de Mozilla explicó que las futuras versiones de Firefox seguirían siendo de código abierto, pero se distribuirían con un sandbox diseñado para ejecutar un módulo de descifrado de contenido desarrollado por Adobe, [152] más tarde fue reemplazado por el módulo Widevine de Google , que es mucho más ampliamente adoptado por los proveedores de contenido. Si bien prometió "trabajar en soluciones alternativas", el presidente ejecutivo de Mozilla, Mitchell Baker, declaró que una negativa a implementar EME habría logrado poco más que convencer a muchos usuarios de cambiar de navegador. [153] Esta decisión fue condenada por Cory Doctorow y la Free Software Foundation . [154] [155]
A partir de diciembre de 2023, el W3C ha cambiado su opinión sobre EME , afirmando: "Las extensiones de medios cifrados (EME) brindan mayor interoperabilidad, mejor privacidad, seguridad, accesibilidad y experiencia de usuario al ver películas y TV en la Web". [156]
HTML4 se convirtió en una recomendación del W3C en 1997. Si bien sigue sirviendo como una guía aproximada para muchas de las características principales de HTML, no proporciona suficiente información para crear implementaciones que interoperan 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 Level 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.