Es relativamente sencillo hacer accesible una tabla de datos simple, con una sola fila de encabezados de columna en la parte superior. El verdadero problema comienza con tablas complejas, aquellas con encabezados tanto en columnas como en filas, celdas fusionadas o filas de resumen. Este artículo explica cómo etiquetar encabezados de tablas para que un lector de pantalla "entienda" para cada celda qué encabezados se aplican a ella, sin perder contexto.
En resumen: lo que cubre esta guía
Por qué TH es diferente de TD
En una tabla HTML o un PDF etiquetado, cada celda tiene uno de dos tipos de funciones: TH (encabezado de tabla) o TD (datos de tabla: una celda de datos normal). La diferencia no es necesariamente visual (una celda de encabezado y una celda de datos pueden tener el mismo estilo), es semántica: TH le dice al lector de pantalla "este es un encabezado que explica lo que significan los datos debajo o al lado". Sin el etiquetado correcto, un lector de pantalla se mueve a través de la tabla fila por fila como si cada celda fuera igual, y es fácil perder completamente la pista de qué datos pertenecen a cada categoría.
Cuando el alcance es suficiente y cuando se necesita más
Para la mayoría de las tablas, agrega unalcanceatributo a cada celda TH para indicar si es un encabezado de columna (scope="col") o un encabezado de fila (scope="row"). Cuando un lector de pantalla llega a una celda de datos, anuncia automáticamente tanto el encabezado de columna como el encabezado de fila correspondiente, de modo que el usuario escucha, por ejemplo, "1200 - Ventas, primer trimestre" en lugar de solo un "1200" aislado.
Para tablas especialmente complejas, con más de dos niveles de encabezados (por ejemplo, un superencabezado que agrupa varias subcolumnas), el alcance por sí solo no siempre es suficiente. En esos casos, utilice el par de atributos id y headers: asigne a cada celda del encabezado una identificación única y, en cada lista de celdas de datos, en el atributo de encabezados, todos los identificadores de encabezado relevantes. Este método es más flexible pero también más complejo y propenso a errores; resérvelo para casos que realmente lo necesiten.
scope="col"y los encabezados de fila ("Q1", "Q2", "Q3") conscope="row"—por lo que cada celda de datos está vinculada a los dos encabezados relevantes para ella.Filas de resumen y encabezados múltiples
Una fila de resumen en la parte inferior de una tabla ("Total", "Promedio") es en sí misma una especie de encabezado; generalmente es apropiado etiquetar la celda total como TH con alcance="fila", para que un lector de pantalla la distinga de una fila de datos normal. De manera similar, una tabla con un superencabezado que agrupa varias columnas (por ejemplo, "Ventas 2026" que abarca "Q1", "Q2") requiere el uso correcto de lacolspanatributo junto con el alcance, por lo que la agrupación jerárquica también se conserva cuando se lee en voz alta.
💡 Consejo práctico
Si una tabla parece demasiado complicada para etiquetarla correctamente (más de dos niveles de encabezados, múltiples fusiones), a veces la solución más simple y accesible es dividirla en varias tablas más simples o agregar un resumen de texto sin formato junto a ella.
Cómo se ve esto en la práctica en Word y PDF
En Word, usar la herramienta estándar "Insertar ▸ Tabla" y marcar "Fila de encabezado" en Diseño de tabla crea la base correcta, que se exporta a PDF como TH automáticamente en la mayoría de los casos. En Acrobat, después de exportar desde Word y ejecutar una verificación de accesibilidad, vale la pena abrir el árbol de etiquetas y confirmar que las celdas del encabezado estaban marcadas como TH y no como TD normal; este es un error de exportación común que es fácil pasar por alto.
¿Tiene tablas de datos en documentos que nunca han sido probados?
Nuestra herramienta identifica tablas con encabezados faltantes o incorrectos en cada archivo PDF de su sitio.
Escanea tu sitio gratis ←