Bueno, lo cierto es que hablar de las especificaciones oficiales de las versiones más antiguas del HTML no tiene mucho sentido. Pues, los temas tocados no son relevantes para lo que nos compete a nosotros. Pero, como vamos a ver HTML cómo XHTML, debemos mencionar la primera en la que ambas tecnologías se combinan para un bien común.
Especificación oficial sobre HTML y XHTML
El organismo W3C ↗ (World Wide Web Consortium) elabora las normas que deben seguir los diseñadores de páginas web para crear las páginas HTML. Las normas oficiales están escritas en inglés y se pueden consultar de forma gratuita en las siguientes direcciones:
El estándar XHTML 1.0 incluye el 95% del estándar HTML 4.01, ya que solo añade pequeñas mejoras y modificaciones menores. Afortunadamente, no es necesario leer las especificaciones y recomendaciones oficiales de HTML para aprender a diseñar páginas con HTML o XHTML. Las normas oficiales están escritas con un lenguaje bastante formal y algunas secciones son difíciles de comprender.
Por ello, en los próximos capítulos se explica de forma sencilla y con decenas de ejemplos la especificación oficial de XHTML.
Sobre HTML 5
HTML5 (HyperText Markup Language, versión 5) es la quinta revisión del lenguaje HTML. Esta nueva versión (aún en desarrollo), y en conjunto con CSS3, define los nuevos estándares de desarrollo web, rediseñando el código para resolver problemas y actualizándolo así a nuevas necesidades.
No se limita solo a crear nuevas etiquetas o atributos, sino que incorpora muchas características nuevas y proporciona una plataforma de desarrollo de complejas aplicaciones web (mediante los APIs).
HTML5 fue destinado a sustituir no sólo HTML 4, sino también XHTML 1 y DOM Nivel 2. Esta versión nos permite una mayor interacción entre nuestras páginas web y el contenido media (video, audio, entre otros) así como una mayor facilidad a la hora de codificar nuestro diseño básico.
Algunas de las nuevas características de HTML5 serían:
- Nuevas etiquetas semánticas para estructurar los documentos HTML, destinadas a remplazar la necesidad de tener una etiqueta
<div>
que identifique cada bloque de la página. - Los nuevos elementos multimedia como
<audio>
y<video>
. - La integración de gráficos vectoriales escalables (SVG) en sustitución de los genéricos
<object>
, y un nuevo elemento<canvas>
que nos permite dibujar en él. - El cambio, redefinición o estandarización de algunos elementos, como
<a>
,<cite>
o<menu>
. MathML
para fórmulas matemáticas.- Almacenamiento local en el lado del cliente.
- Y otros muchos nuevos APIs que veremos a lo largo de los siguientes capítulos.
Especificación oficial de HTML 5 y HTML 5.1
El organismo W3C elabora las normas a seguir para la creación de las páginas HTML5. Sin embargo, no es necesario conocer todas estas especificaciones, escritas es un lenguaje bastante formal, para diseñar páginas con este lenguaje. Las normas oficiales están escritas en inglés y se pueden consultar de forma gratuita en las siguientes direcciones:
- Especificación recomendada como candidata para HTML5 ↗
- Borrador para la especificación oficial de HTML 5.1 ↗
El HTML5 es una API
Se puede pensar en HTML solo como nuevas etiquetas y geolocalización. Pero esta no es más que una pequeña parte del estándar que define HTML5. La especificación de HTML5 define también cómo esas etiquetas interactúan con JavaScript, a través del Modelo de Objetos de Documento (DOM).
HTML5 no es únicamente definir una etiqueta como <video>
, también existe su correspondiente API para objetos de vídeo en el DOM.
Se puede utilizar esta API para detectar el soporte para diferentes formatos de vídeo; reproducir el vídeo; hacer una pausa; silenciar el audio; realizar un seguimiento de la cantidad de vídeo que se ha descargado; y todo lo que necesita para crear una completa experiencia de usuario alrededor de la etiqueta en sí.
HTML5 es un estándar basado en HTML 4
Sí te digo que HTML5 es un estándar basado en HTML 4 vos me vas a decir: — ¡Chocolate por la noticia!, ¡Tiene sentido!, pero, ¿por qué?.
Bueno, te puede gustar o no HTML 4, pero no se puede negar que es posiblemente el lenguaje de programación más exitoso de la historia.
— Entonces, ¿qué hace HTML5?. Bueno, justamente, se basa en ese éxito. Pues, no es necesario volver a aprender cosas que ya se conocen. Si la aplicación web que funcionaba ayer en HTML 4, hoy funcionará en HTML5.
Ahora, si lo que se desea es mejorar las aplicaciones web, este es el lugar correcto. He aquí un ejemplo concreto: HTML5 soporta todos los controles de formulario de HTML 4, pero también incluye nuevos controles de entrada. Algunos de estos son funcionalidades esperadas durante mucho tiempo, como reguladores y selectores de fecha, mientras que otros son más sutiles.
Por ejemplo, el tipo de entrada de correo electrónico se parece a un cuadro de texto, pero los navegadores móviles personalizar su teclado en pantalla para que sea más fácil de escribir direcciones de correo electrónico.
Los navegadores más antiguos que no son compatibles con el tipo de entrada de correo electrónico será tratado como un campo de texto normal, y el formulario sigue funcionando sin ningún cambio en las etiquetas de JavaScript.
El HTML es el mejor lenguaje de programación para comenzar
Sí estás en este curso, es porque realmente querés aprender sobre programación. Entonces, sí estás empezando, el mejor lenguaje para arrancar en este mundo es comenzar con HTML.
Pues, una vez que domines este lenguaje de programación, podrás entender mucho más fácil, tanto el CSS, cómo el JavaScript, y los demás.
Además, HTML5 es retrocompatible. Esto quiere decir, que sí ya conoces de versiones anteriores, el conocimiento aprendido puede serte útil. Ya que, grosso modo, toda la base del HTML se mantiene, y simplemente resta que te aprendas algunos nuevos Scripts y poco más.
Ya que, por ejemplo, el tipo de documento «DOCTYPE
» se mantiene en la primera línea de cada página HTML, y data de pequeños cambios imperceptibles. Pues, las versiones anteriores de HTML definen un montón de doctypes
, y elegir el más adecuado puede ser difícil. En HTML5, solo hay un tipo de documento:
<!DOCTYPE html>
La actualización al doctype HTML5 no rompe el marcado existente, ya que los elementos obsoletos previamente definidas en HTML 4 todavía se representará en HTML5. Pero le permitirá usar (y validar) nuevos elementos semánticos como <article>
, <section>
, <header>
y <footer>
.
Funciones de HTML5
Si se quiere dibujar en un lienzo, reproducir vídeo, diseñar mejores formas, o construir aplicaciones web que funcionan offline, nos encontramos con que HTML5 ya está bien soportado. Firefox, Safari, Chrome, Opera y los navegadores móviles ya son compatibles con canvas, video, la geolocalización, el almacenamiento local, y más funcionalidades.
Incluso Microsoft «raramente conocido por el soporte de estándares de todo lo que se escapa de su zona de influencia» soporta la mayoría de las características de HTML5 en sus navegadores web.
Presente y futuro de HTML5
Recapitulando, Tim Berners-Lee inventó la World Wide Web a principios de 1990. Más tarde fundó el W3C para que actuase como administrador único de los estándares web, lo que venido haciendo durante más de 15 años. Esto es lo que el W3C tenía que decir sobre el futuro de los estándares web, en julio de 2009:
Hoy, el director anuncia que cuando el XHTML 2 expire en la fecha prevista a finales de 2009, no será renovado. De este modo, y mediante el aumento de los recursos en el Grupo de Trabajo de HTML, el W3C espera acelerar el progreso de HTML5 y aclarar la posición del W3C sobre el futuro de HTML.
En septiembre de 2012, el W3C propuso un plan ↗ para crear una primera especificación de HTML5 a finales de 2014, y una nueva especificación final de HTML 5.1 a finales 2016. Al igual que ocurre en la especificación de CSS3, en HTML5 se ha optado por modularizar la especificación, creando grupos de trabajo que trabajan de forma separada en diferentes aspectos del estándar.
Algunas de las especificaciones sobre las que se está trabajando:
- HTML Microdata ↗ – HTML WG
- HTML Canvas 2D Context ↗ – HTML WG
- HTML5 Web Messaging ↗ – Web Apps WG
- Web Workers ↗ – Web Apps WG
- Web Storage ↗ – Web Apps WG
- The WebSocket API ↗ – Web Apps WG
- The WebSocket Protocol ↗ – IETF HyBi WG
- Server-Sent Events ↗ – Web Apps WG
- WebRTC ↗ – WebRTC WG
- WebVTT ↗ – W3C Web Media Text Tracks CG
¿Se viene HTML6?
Como todos sabemos, HTML5 es la última versión de HTML disponible actualmente en Internet. Y en algún momento se lanzará HTML6 con algunas de las características y funcionalidades nuevas y modificadas. Pero, lo cierto es que a día de hoy no hay mucho confirmado, sí bien se esperan nuevas funciones y demás ideas, aún debemos esperar para verlas.
