Mostrando las entradas con la etiqueta W3C. Mostrar todas las entradas
Mostrando las entradas con la etiqueta W3C. Mostrar todas las entradas

jueves, 19 de marzo de 2009

Cómo hacer una página web (6) - Encabezados

Un encabezado se asemeja al título de una noticia del periódico, que resume e informa al lector sobre el contenido que viene a continuación. En la sección 7.5.5 de la Especificación HTML 4.01 se señala que un encabezado describe brevemente el tema de la sección que introduce, y que hay 6 niveles de encabezado -H1, H2, H3, H4, H5 y H6-, siendo H1 el más importante y H6 el menos importante.

Descárgate el ejemplo práctico. Éste es el código HTML (con el texto de los párrafos acortado):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Ejemplo práctico de encabezados HTML - Bridje blog</title>
</head>
<body>

<h1>Recetas de mi comida favorita</h1>
  <h2>Sushi</h2>
<h3>Ingredientes</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
<h3>Preparación</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
<h2>Risotto</h2>
<h3>Ingredientes</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
<h3>Preparación</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
<h2>Paella</h2>
<h3>Ingredientes</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
<h3>Preparación</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
<h2>Pimientos rellenos de atún</h2>
<h3>Ingredientes</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
<h3>Preparación</h3>
<p>Lorem ipsum...</p>
<p>Lorem ipsum...</p>
</body> </html>

Como ves, he empleado los encabezados H1, H2 y H3 de una manera jerárquica, dividiendo el contenido en "bloques" de secciones y subsecciones. Los H3 abren dos secciones ("Ingredientes y "Preparación") que forman parte de una sección mayor abierta por un H2 (ej. "sushi"), que a su vez forma parte de una sección todavía mayor abierta por un H1 ("Recetas de mi comida favorita").

La sección de contenido abierta por un encabezado se da por terminada si después de ese encabezado hay otro de igual o mayor importancia o si se acaba el documento; por ejemplo, la sección de contenido abierta por el H2 "risotto" termina cuando aparece otro encabezado H2, "paella".

Los encabezados facilitan la lectura al internauta y le proporcionan una idea de cuál es la estructura del documento, sus secciones y subsecciones: para facilitar la navegación y comprensión de la estructura del documento, los autores deberían usar encabezados apropiadamente anidados (por ejemplo, H1 seguido por H2, H2 seguido por H2 o H3, H3 seguido por H3 o H4, etc.). (Techniques for WCAG 2.0 -Técnicas para WCAG 2.0 del W3C)

Normalmente los navegadores visuales ayudan en esta comprensión de la estructura mostrando los encabezados con un mayor (H1) o menor (H6) tamaño, dejando clara la jerarquía, y en negrita y con márgenes para diferenciarlos del cuerpo de texto. Te he hecho un documento HTML en el que puedes comparar cómo muestra tu navegador los diferentes niveles de encabezado.

Además, los internautas ciegos, con problemas de visión, o con dificultades de aprendizaje que emplean lectores de pantalla, se sirven de los encabezados para navegar más fácilmente por la página y para hacerse una idea de cómo se estructura el documento. Si te manejas con el inglés, te recomiendo que veas Importance of HTML Headings for Accessibility, un vídeo de Youtube en el que un consultor de accesibilidad ciego que emplea el lector de pantalla JAWS cuenta lo importante que es para él una buena estructuración de las páginas web a base de encabezados.

¡Importante! No debes emplear un encabezado sólo para darle una determinada apariencia a tu texto. Recuerda, el HTML sirve para estructurar, y para dar formato al documento HTML están las Hojas de Estilo, que veremos más adelante.

Los buscadores dan más importancia a un encabezado que al cuerpo de texto de la página, por ello es aconsejable que añadas al mismo palabras clave que sepas que son de interés en las búsquedas de los internautas y que, por supuesto, tengan que ver con el contenido. Sé de maquetación, pero apenas sé cómo funcionan los buscadores; sin embargo, según tengo entendido, buscadores como Google pueden detectar juego sucio e ignorar tus encabezados si abusas de demasiadas palabras clave o escribes términos que no tengan que ver con el contenido. Seguiré informándome porque es ciertamente un tema muy interesante.

Como norma, te recomendaría que fueses "legal" y le facilitaras la vida a tus visitantes poniendo encabezados claros, breves en lo posible, y solamente los necesarios. Como curiosidad, te diré que en 8 años sólo he usado el encabezado H5 maquetando un sitio web que estaba lleno de Leyes larguísimas y necesitaba muchos niveles de división. Lo cierto es que el resto de las veces me ha bastado con usar del H1 al H4.

Y hasta aquí la parte "bonita". Y es que hay un debate muy (MUY) encendido sobre cómo usar los encabezados. El W3C no es muy específico y acaban surgiendo opiniones contrarias sobre cómo deben hacerse las cosas. Es un tema muy lioso y por ello me he limitado a ponerte un ejemplo de página sin menús ni nada que la complique y explicarte cómo creo que deberían hacerse las cosas (y como las hace mucha gente) cuando el documento es así de sencillo 8)

Por ponerte un ejemplo de uno de los temas del debate, el W3C no especifica cuántos H1 puede haber por página, y la gente tiene diferentes opiniones al respecto. Yo personalmente sólo lo empleo una vez por página, y si veo que un documento necesita claramente dos H1 (es decir, tiene dos temáticas bien diferenciadas), entonces lo divido en dos documentos, cada uno con su H1.

lunes, 16 de marzo de 2009

Cómo hacer una página web (5) - Elementos HTML

En anteriores tutoriales vimos cómo poner un título a tu página web empleando el elemento TITLE y cómo escribir párrafos con el elemento P. Como supongo que ya habrás adivinado, los elementos HTML sirven para estructurar una página web, catalogando su contenido y dando así sentido al conjunto. Si sólo escribes texto pero no lo incluyes como parte de elementos HTML, al navegador le será imposible interpretar qué es un título, qué es un párrafo, qué es una lista, etc. Y si el navegador no sabe qué es qué, no podrá mostrarlo de la manera adecuada, como por ejemplo con unos determinados márgenes y tipo de texto.

Ahora me gustaría que imprimieras la tabla con los elementos HTML 4 que aparece en el site del W3C español. Añado además la versión en inglés para que sepas cómo se denomina a los elementos de manera internacional.

Como verás, tenemos una tabla en cuya primera columna aparece el nombre de los elementos. Éste es a veces una palabra completa (CAPTION, TABLE, etc.), pero lo más habitual es que sea una abreviatura o acrónimo, como por ejemplo UL (unordered list, lista no ordenada).

En los encabezados de las siguientes tres columnas de la tabla leemos Etiqueta inicial (o de apertura), Etiqueta final (o de cierre) y Vacío. Esto hace referencia a tres tipos de elementos HTML, dependiendo de cómo se creen:

  1. Elementos que DEBEN tener una etiqueta de apertura y otra de cierre.
    • Son los elementos de la tabla cuyas tres columnas mencionadas están vacías.
    • La etiqueta de apertura consta del signo "menor que" + el nombre del elemento + el signo "mayor que": <nombre-del-elemento>
    • La etiqueta de cierre consta del signo "menor que" + la barra oblicua + el nombre del elemento + el signo "mayor que": </nombre-del-elemento>
    • Entre ambas etiquetas hay contenido.
  2. Elementos con contenido cuya etiqueta de cierre y/o de apertura son opcionales.
    • Son los elementos de la tabla en cuya columna "Etiqueta inicial" y/o columna "Etiqueta final" hay una "O" de opcional.
    • Son elementos que, como los primeros, tienen un determinado contenido.
  3. Elementos que NUNCA tienen etiquetas de cierre.
    • Son los elementos de la tabla en cuya columna "Vacío" hay una "V".
    • Estos elementos son clasificados como vacíos porque no tienen contenido. Un ejemplo es BR, que sirve para forzar un salto de línea, o IMG, para insertar una imagen en la página.

¡Importante! Aunque la Especificación HTML 4.01 permita que no haga falta escribir las etiquetas de ciertos elementos, te recomiendo usar las etiquetas de apertura y cierre en TODOS los elementos que no estén vacíos. Si algún día decides pasarte al XHTML, el acostumbrarte a emplear las etiquetas te puede ahorrar muchos quebraderos de cabeza. Por esta misma razón, aunque las etiquetas puedan escribirse tanto en mayúsculas como en minúsculas, te recomiendo que lo hagas siempre en minúsculas.

Respecto a la quinta columna, basta por ahora con indicarte que en ella se señala con una "D" a los elementos desaprobados, es decir, elementos que no deben usarse con el HTML 4.01 Strict.

viernes, 13 de marzo de 2009

Cómo hacer una página web (4) - El W3C

Es inevitable que, antes de continuar con la parte práctica, te explique algunas cosas que son muy, muy importantes.

A partir de ahora mencionaré bastante al W3C (World Wide Web Consortium), cuya misión es, tal y como se describe en su site español, guiar la Web hacia su máximo potencial a través del desarrollo de protocolos y pautas que aseguren el crecimiento futuro de la Web.

Yo me quedo con esto: Para que la Web alcance su máximo potencial, las tecnologías Web más importantes deben ser compatibles entre sí y permitir que cualquier hardware y software, utilizado para acceder a la Web, funcione conjuntamente. El W3C hace referencia a este objetivo como 'interoperabilidad Web'. Al publicar estándares abiertos (no propietarios) para lenguajes Web y protocolos, el W3C trata de evitar la fragmentación del mercado y, por lo tanto, la fragmentación de la Web.

Y es que el W3C crea las llamadas W3C Recommendations (Recomendaciones del W3C), documentos que describen cuáles deberían ser las prácticas estándares de la industria Web: Una Recomendación del W3C es lo mismo que un estándar Web, sólo que una especificación desarrollada por el W3C es estable, contribuye a fomentar la interoperabilidad en la Web, y ha sido revisada por los Miembros del W3C, que favorecerán su adopción por parte de la industria.

Y, si le echas un vistazo a la lista de miembros del W3C, te darás cuenta por qué hay que tener en cuenta lo que proponen.

¿Estándares abiertos? ¿no propietarios? ¿fragmentación de la Web? ¿qué tipo de lío es éste, Bríd?

Un ejemplo que te lo va a dejar un poquito más claro; seguro que has escuchado alguna vez que hay videojuegos, o programas de TV, que pueden causar un ataque en personas con epilepsia fotosensitiva. Pues bien, en una de las Recomendaciones del W3C se establecen unas pautas para hacer que el contenido web sea accesible para personas con discapacidades, y en uno de sus puntos se pide a los desarrolladores web que no hagan parpadear la pantalla hasta que los navegadores no permitan que los internautas puedan parar el parpadeo a voluntad. Esta Recomendación se llama Web Content Accesibility guidelines 1.0 (Pautas de Accesibilidad al Contenido en la Web 1.0.)

Otra Recomendación del W3C muy importante es la HTML 4.01 Specification ( Especificación HTML 4.01). Cualquier desarrollador web debe tener conocimiento de estos estándares, de estas Recomendaciones o Especificaciones, y al mismo tiempo conocer cómo cumplen los principales navegadores con las Recomendaciones. Porque, efectivamente, también hay estándares propuestos para los navegadores. Esto explica un poco más la frase que subrayé arriba: ¿para qué fragmentar el mercado creando por ejemplo elementos HTML que sólo tu navegador va a saber interpretar? ¿no será mejor ponerse de acuerdo y que haya un solo HTML que sea interpretado igual por todos los navegadores?

Bueno, ésta es al menos la teoría, en la práctica no es así ni mucho menos. Así a voz de pronto me viene a la mente que son muchisimos los maquetadores que se ***** en Microsoft Internet Explorer todos los días. ¡Pero dejémoslo aquí por hoy!

Nota: en el site español de la W3C no hay traducciones de todo el contenido del inglés al español, de ahí que los enlaces a las Pautas de Accesibilidad al Contenido en la Web 1.0 y la Especificación HTML 4.01 enlacen con conclase.net, donde Varias personas y organizaciones se han ofrecido voluntarias para traducir al castellano algunas de las recomendaciones del W3C. A aquellos que se manejen con el inglés les recomiendo que sean los documentos originales los que le sirvan de referencia, ya que son los únicos normativos.