Ir al contenido
Suscribete

Estructurando nuestra web con HTML5

Guardado en: Web
14:20 26/01/2008

Este artículo está basado en el borrador público del estándar HTML5. La información aquí escrita podría no ser válida cuando se apruebe el estandar definitivo.

HTML5 va a suponer un paso importante hacia la web semántica. Las nuevas etiquetas para el marcado permiten describir mejor el contenido de nuestros documentos, lo que mejorará el tratamiento que dan a la información los navegadores y los motores de búsqueda.

Secciones, encabezados y pies

Hasta ahora para definir las distintas partes de un documento era necesario el uso de <div>s con el atributo class para organizar el contenido. Aunque el uso de clases es útil para nosotros como desarrolladores, los UAs poco pueden hacer para interpretar el significado semántico de las mismas. Si nosotros escribimos <div class="header"> o <div class="cabecera"> sabemos que se corresponde a la cabecera de un bloque, pero un navegador o un motor de búsqueda no sabría diferenciar ese bloque de cualquier otro.

Con las nuevas etiquetas <section>, <header> y <footer> podremos definir con exactitud la función que desempeña cada bloque de nuestro documento.

Leer más…

Extensiones en el DOM de HTML5

Guardado en: Web
22:34 23/01/2008

Una de las cosas que mas me gustan del nuevo HTML5 son las extensiones de los objetos HTMLDocument y HTMLElement. Si bien son cosas que podemos hacer actualmente con librerías como prototype o jQuery, no viene mal que se puedan realizar de manera nativa.

HTMLDocument

El nuevo HTML5 define el metodo getElementsByClassName() para seleccionar elementos a través de su clase.

innerHTML pasa a ser estandar, y a nivel de documento (antes solo estaba implementado en HTMLElement). De esta forma podemos serializar todo el documento.

activeElement devuelve el elemento que tiene foco actualmente. Si ningún elemento tiene foco devuelve el body de la página.

hasFocus determina si el documento tiene foco.

getSelection() devuelve un objeto que representa la selección o selecciones actuales del documento. Si por ejemplo el usuario selecciona el siguiente bloque de texto en su navegador Texto seleccionado document.getSelection().toString() devolverá "est qui dolorem ipsum quia dolor sit amet"

HTMLElement

Tambien implementa getElementsByClassName(). Combinado con getElementById() podemos restringir el ámbito de la búsqueda. Así podremos escribir sentencias como:

var articulos = document.getElementById('contenido').getElementsByClassName('articulo');

Al igual que en HTMLDocument, innerHTML pasa a ser estandar.

classList devuelve un objeto con el que poder manipular las clases de un elemento. Esto es muy útil cuando tenemos un elemento con más de una clase.

clases = document.getElementById('contenido').classList;
clases.has('clase'); // Vemos si el elemento tiene una clase determinada
clases.add('clase'); // Añade una clase al elemento
clases.del('clase'); // Elimina una clase del elemento
clases.toggle('clase'); // Si el elemento tiene la clase, la elimina. Si no la tiene la añade

Para los elementos a, area y link se añade un objeto llamado relList con los mismos métodos para manejar el atributo rel

Lo malo: que las podremos usar cuando Microsoft las implemente en Internet Explorer 17 o así.

Sobre mí

Alejandro Fernández

Alejandro Fernández Webero de profesión y fotógrafo de afición. Escribo con más o menos acierto sobre lo que caiga en mis manos y me interese.

Si crees tener algo que pueda interesarme: Contacta

Todos los articulos están bajo licencia Creative Commons by-nc-sa a no ser que se indique lo contrario.

Powered by Wordpress