HTML semántico para accesibilidad

Cómo estructurar páginas con etiquetas semánticas para mejorar navegación, comprensión y mantenimiento.

La semántica en HTML no es decoración: define cómo se entiende tu interfaz por lectores y navegadores.

Antes de pensar en ARIA, elige bien cada elemento nativo: header, nav, main, article, section, button, a.

Una estructura semántica consistente mejora la navegación por atajos y reduce deuda técnica.

Si tu markup ya expresa intención, necesitas menos parches y menos código frágil.

  • Criterios prácticos para elegir etiquetas HTML con intención y no por costumbre.
  • Cómo pasar de layouts con div a estructuras que comunican intención real.
  • Empieza por identificar bloques de la interfaz: navegación, contenido principal, contenido complementario y acciones.
  • Sustituye contenedores genéricos por etiquetas semánticas solo cuando representen de verdad ese bloque.
  • Revisa siempre el resultado con inspector y recorrido de teclado para comprobar que la estructura guía la interacción.

Claves teóricas

Criterios prácticos para elegir etiquetas HTML con intención y no por costumbre.

Aplicación en proyectos reales

Cómo pasar de layouts con div a estructuras que comunican intención real.

Empieza por identificar bloques de la interfaz: navegación, contenido principal, contenido complementario y acciones.

Sustituye contenedores genéricos por etiquetas semánticas solo cuando representen de verdad ese bloque.

Revisa siempre el resultado con inspector y recorrido de teclado para comprobar que la estructura guía la interacción.

  • Crea una plantilla base semántica para todas las páginas del proyecto.
  • Establece una regla de equipo sobre jerarquía de títulos por vista.
  • Incluye validación de HTML semántico en revisión técnica.
  • Corrige primero componentes reutilizados para maximizar impacto.

Patrón de código

Ejemplo de página mínima con landmarks y jerarquía de títulos coherente.

Accesibilidad Web
03

HTML semántico para accesibilidad

Cómo estructurar páginas con etiquetas semánticas para mejorar navegación, comprensión y mantenimiento.

Código del tema: semantic html

📘 Teoría

Claves teóricas

Criterios prácticos para elegir etiquetas HTML con intención y no por costumbre.

1

Estructura de documento

Define regiones claras con header, nav, main, aside y footer para mejorar orientación.

2

Jerarquía de títulos

Usa h1-h6 en orden lógico para facilitar lectura rápida y navegación por encabezados.

3

Elemento correcto, función correcta

Enlace para navegar, botón para acción. Cambiarlos rompe expectativas y accesibilidad.

4

Listas y tablas cuando toca

No maquilles listas con div ni datos tabulares con grid sin semántica.

5

ARIA como apoyo

ARIA complementa; no sustituye el HTML nativo cuando existe elemento adecuado.

6

Beneficio técnico

Markup semántico facilita pruebas, mantenimiento y comprensión entre personas del equipo.

Aplicación en proyectos reales

Cómo pasar de layouts con div a estructuras que comunican intención real.

Empieza por identificar bloques de la interfaz: navegación, contenido principal, contenido complementario y acciones.

Sustituye contenedores genéricos por etiquetas semánticas solo cuando representen de verdad ese bloque.

Revisa siempre el resultado con inspector y recorrido de teclado para comprobar que la estructura guía la interacción.

  • Crea una plantilla base semántica para todas las páginas del proyecto.
  • Establece una regla de equipo sobre jerarquía de títulos por vista.
  • Incluye validación de HTML semántico en revisión técnica.
  • Corrige primero componentes reutilizados para maximizar impacto.

Patrón de código

Ejemplo de página mínima con landmarks y jerarquía de títulos coherente.

Layout semántico básico
<header>
  <h1>Revista Dev</h1>
</header>
<nav aria-label="Principal">
  <a href="#articulos">Artículos</a>
  <a href="#podcast">Podcast</a>
</nav>
<main id="articulos">
  <article>
    <h2>CSS con enfoque accesible</h2>
    <p>Contenido del artículo.</p>
  </article>
</main>

🧪 Aprende probando

Ejemplo Demo guiada Convierte una estructura genérica en un layout semántico navegable.

🏁 Retos

Reto Reto práctico Reemplaza etiquetas genéricas por semánticas manteniendo el mismo contenido.

🧰 Recursos

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros 😉.

Esta la hice en febrero de 2026 para facilitar el aprendizaje de mis alumnxs. Aprender desarrollo web practicando. La idea es que crezca semanalmente con nuevos temas, tests y retos.

Inspirado en MDN, en W3Schools, en Codepen, en el crack de Manz y en mil sitios de documentación sobre desarrollo web. Quería aportar además de bloques teóricos con ejemplos, la gamificación de los retos y el sistema de test que ya tenía en culTest .

Si te gustó, si no te gustó, si quieres saludarme, o invitarme a 🍻 no dudes en escribirme en cristianeslava@gmail.com .