Capítulo 1 ¿Qué es HTML5?

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 está 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.

1.1 Especificación oficial

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:

1.2 5 Tips

1.2.1 HTML5 es API

Se puede pensar en HTML sólo 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í.

1.2.2 No hay que tirar nada a la basura

Se puede amar, o se puede odiar, pero no se puede negar que HTML 4 es el formato de marcado más exitoso de la historia. HTML5 se basa en ese éxito. 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 o hacks de JavaScript.

1.2.3 Fácil de comenzar

"Actualizar" a HTML5 puede ser tan simple como cambiar su tipo de documento. El tipo de documento debe estar en la primera línea de cada página HTML. Las versiones anteriores de HTML definen un montón de doctypes, y elegir el más adecuado puede ser difícil. En HTML5, sólo 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>.

1.2.4 ¡Ya funciona!

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) soporta la mayoría de las características de HTML5 en Internet Explorer 9.

1.2.5 Ha venido para quedarse

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:

Índice de contenidos