1.6 Semántica y accesibilidad¶
Elementos semánticos¶
HTML5 incluye etiquetas que dicen qué es cada parte de la página, en lugar de usar <div> para todo:
<body>
<header> <!-- cabecera: logo y título -->
<nav> <!-- menú de navegación -->
<a href="#">Inicio</a>
</nav>
</header>
<main> <!-- contenido principal (uno por página) -->
<section> <!-- bloque temático -->
<article> <!-- contenido independiente: una noticia, un comentario -->
</article>
</section>
<aside> <!-- contenido relacionado: barra lateral -->
</aside>
</main>
<footer> <!-- pie: contacto, derechos -->
</footer>
</body>
| Etiqueta | Úsala para |
|---|---|
header / footer |
Cabecera / pie de la página o de una sección |
nav |
Un bloque de enlaces de navegación |
main |
El contenido principal |
section |
Un apartado con su propio título |
article |
Algo que tiene sentido por sí solo |
aside |
Contenido secundario |
div / span |
Contenedores sin significado (para agrupar y dar estilo) |
Por qué importa
Los lectores de pantalla y los buscadores entienden la estructura; además, el código es más legible.
Accesibilidad básica¶
alten todas las imágenes con significado (yalt=""si son decorativas).labelen cada campo de formulario.- Jerarquía de títulos ordenada (
h1→h2→h3), sin saltos. - Texto de enlace descriptivo: "Descargar el temario (PDF)" mejor que "pincha aquí".
langen la etiqueta<html>.- Contraste suficiente entre el texto y el fondo, y no transmitir información solo con el color.
- Que se pueda usar con el teclado (tabulador).
Atributos globales¶
| Atributo | Para qué |
|---|---|
id |
Identificador único en la página (para enlaces, CSS y JS) |
class |
Etiqueta reutilizable (varios elementos pueden compartirla) |
title |
Texto de ayuda al pasar el ratón |
style |
Estilo en línea (mejor evitarlo: usa CSS) |
hidden |
Oculta el elemento |
Validar tu HTML¶
Comprueba que está bien escrito con el validador del W3C y mira la consola del navegador (F12) si algo no se ve como esperas.