table-headers-attr-valid

El atributo "headers" de una celda de tabla debe referenciar celdas de encabezado válidas

automaticWCAG 1.3.1 (A)confianza: highgravedad: seriousperceivable

Comprueba que cada id del atributo headers de un <td>/<th> resuelve a una celda (<td> o <th>) dentro de la misma tabla (que no falte, que no sea un elemento distinto de una celda, y que no sea ella misma).

Ámbito de aplicación. Se aplica a los elementos <td>/<th> que llevan un atributo headers no vacío, dentro de una <table> cuyo rol semántico sigue siendo table/grid/treegrid. Un atributo `role` explícito con cualquier otro valor (role="presentation"/"none", pero también role="heading" o cualquier otro rol real) sustituye la semántica nativa de tabla, sin dejar ninguna tabla que headers pueda describir. Coincide con la aplicabilidad de ACT a25f45.

Resultado esperado. Cada token id del atributo headers resuelve a un elemento que: (a) existe, (b) es una celda (<td> o <th>) de la misma <table> que la celda que lo referencia, y (c) no es la propia celda. Un <td> que actúa como encabezado mediante role="columnheader"/"rowheader" es un destino válido, igual que un <th> normal. ACT a25f45 no exige la etiqueta nativa.

Ejemplos

pass
<table>
<tr><th id="h1">Name</th></tr>
<tr><td headers="h1">Apple</td></tr>
</table>

`headers="h1"` resuelve a una celda real de la misma tabla.

fail
<table>
<tr><th id="h2">Name</th></tr>
<tr><td headers="missing">Banana</td></tr>
</table>

`headers` referencia un id que no existe en la tabla.

Ver código fuente