La especificacion HTML5 trae muchos nuevos elementos a los desarrolladores web, permitiendoles describir la estructura de un documento web con semantica estandarizada. Este documento describe estos elementos y como usarlos para definir el perfil de cualquier documento.

Problemas resueltos por HTML5

La definicion de la estructura de un documento en HTML 4 y su algoritmo de perfilado es muy tosco y genera numerosos problemas:

- HTML5 quita la necesidad de elementos
para definir secciones semanticas sin definir valores especificos para los atributos class, introduciendo un nuevo elemento,
, el elemento de seccion HTML.

- Mezclar varios documentos es dificil: la inclusion de un sub-documento en un documento principal. Esto se resuelve en HTML5 con los elementos de seccionado (article, section, nav y aside) son siempre subsecciones de su seccion ancestra mas cercana.

- HTML5 introduce el elemento hgroup que oculta todos los elementos de cabecera excepto el primero de mas alto rango

- Un documento puede tener secciones especiales conteniendo informacion relacionado que no es parte del flujo principal. HTML5 introduce el elemento aside permitiendo a dichas secciones no ser parte del perfil principal.

- Hay informacion relacionada no al documento pero si al sitio entero, como logos, menus, tablas de contenidos, o informacion de derechos de autor y notas legales. Para ese proposito, HTML5 introduce tres elementos de seccion especificos: nav para colecciones de enlaces, como una tabla de contenidos, footer y header informacion relacionada con el sitio.

De manera mas general, HTML5 trae precision a las caracteristicas de seccionado y cabecera, permitiendo a los perfiles de documento ser predecibles y usados por el navegador para mejorar la experiencia de usuario.

El algoritmo de perfilado de HTML5

Definiendo secciones en HTML5

Todo el contenido incluido dentro del elemento body es parte de una seccion. Las secciones en HTML5 pueden ser anidadas. Ademas de la sección principal, definida por el elemento body, los limites de la seccion son definidos explicita o implicitamente. La secciones definidas explicitamente son el contenido definido en las etiquetas body, section, article, aside, footer, header, y nav. Nota: Cada seccion puede tener su propia jerarquia de cabeceras. Por lo tanto, incluso una seccion anidada puede tener un elemento

. Consulte tambien Definiendo cabeceras en HTML5.