Técnica HTML WCAG 2.2 obsoleta
H4Crear un orden de tabulación lógico entre enlaces, controles de formulario y objetos
Técnica obsoleta: el W3C ya no la recomienda. Se mantiene traducida como referencia histórica y porque sigue apareciendo en auditorías antiguas. Manipulating focus order is discouraged, as it frequently introduces new accessibility issues.
En resumen
Técnica obsoleta que explica cómo usar el atributo tabindex con valores positivos para imponer un orden de tabulación distinto del orden del código cuando este no refleja las relaciones del contenido. Hoy se desaconseja manipular el orden del foco, porque suele introducir nuevos problemas de accesibilidad; en la mayoría de los casos basta con colocar los elementos interactivos en un orden lógico dentro del código.
Aplicabilidad
HTML y XHTML
Descripción
El objetivo de esta técnica es proporcionar un orden de tabulación lógico cuando el orden de tabulación predeterminado no es suficiente. A menudo, colocar los elementos interactivos en un orden que siga las secuencias y relaciones del contenido es suficiente y esta técnica no es necesaria. Es muy fácil introducir errores de usabilidad al establecer el orden de tabulación de forma explícita.
En algunos casos, el autor puede querer especificar un orden de tabulación que siga las relaciones
del contenido sin seguir el orden de los elementos interactivos en el código. En
esos casos, se puede especificar un orden alternativo mediante el atributo tabindex
del elemento interactivo. Al tabindex se le asigna un valor entre
0 y 32767.
Cuando se navega por los elementos interactivos con la tecla de tabulación, los elementos reciben
el foco en orden creciente según el valor de su atributo tabindex.
Los elementos cuyo valor de tabindex es mayor que 0 reciben el foco
antes que los elementos sin tabindex o con un tabindex de 0. Una vez que
todos los elementos con un tabindex mayor que 0 han recibido el foco, el resto de los
elementos interactivos reciben el foco en el orden en que aparecen en la página
web.
Ejemplos
Un formulario de búsqueda genealógica busca registros matrimoniales. El formulario de búsqueda incluye
varios campos de entrada para la novia y el novio. El formulario está marcado con una tabla
de datos que incluye los campos del novio en la primera columna y los campos de
la novia en la segunda columna. El orden en el contenido es fila por fila, pero el
autor considera más lógico recorrer el formulario columna por columna. De este modo, todos
los criterios del novio pueden rellenarse antes de pasar a los criterios de la novia. Los
atributos tabindex de los campos de entrada se usan para especificar un orden
de tabulación que recorre el formulario columna por columna.
<form action="#" method="post">
<table summary="the first column contains the search criteria of
the groom, the second column the search criteria of
the bride">
<caption>Search for marriage records</caption>
<tr>
<th>Search criteria</th>
<th>Groom</th>
<th>Bride</th>
</tr>
<tr>
<th>First name</th>
<td><input type="text" size="30" value="" name="groomfirst"
title="First name of the groom" tabindex="1"></td>
<td><input type="text" size="30" value="" name="bridefirst"
title="First name of the bride" tabindex="4"></td>
</tr>
<tr>
<th>Last name</th>
<td><input type="text" size="30" value="" name="groomlast"
title="Last name of the groom" tabindex="2"></td>
<td><input type="text" size="30" value="" name="bridelast"
title="Last name of the bride" tabindex="5"></td>
</tr>
<tr>
<th>Place of birth</th>
<td><input type="text" size="30" value="" name="groombirth"
title="Place of birth of the groom" tabindex="3"></td>
<td><input type="text" size="30" value="" name="bridebirth"
title="Place of birth of the bride" tabindex="6"></td>
</tr>
</table>
</form>
Una página web contiene un campo de búsqueda en la esquina superior derecha. Al campo se le asigna tabindex="1" para que sea el primero en el orden de tabulación, aunque no sea el primero en el orden del contenido.
Los valores de tabindex no tienen que ser consecutivos ni empezar por ningún
valor en particular. Tampoco tienen que ser únicos. Los elementos que tienen valores de
tabindex idénticos se recorren en el orden en que aparecen en el
flujo de caracteres.
En las secciones del contenido en las que el orden de tabulación sigue el orden del contenido, puede ser menos propenso a errores asignar a todos los elementos el mismo valor de tabindex que especificar un número distinto para cada elemento. Así resulta fácil reorganizar esos elementos o añadir otros nuevos y mantener un orden de tabulación lógico.
<a href="xxx" tabindex = "1">First link in list</a>
<a href="xxx" tabindex = "1">Second link in list</a>
<a href="xxx" tabindex = "1">Link that was added long
after the original list was created</a>
<a href="xxx" tabindex = "1">Third link in list</a>
...
<a href="xxx" tabindex = "1">Twentieth link in list</a>
Pruebas
Procedimiento
- Comprobar si se usa
tabindex - Si se usa
tabindex, comprobar que el orden de tabulación especificado por los atributostabindexsigue las relaciones del contenido.
Resultados esperados
- La comprobación n.º 2 es verdadera.
Recursos
- Tabbing navigation in the HTML 4.01 specification (navegación con tabulador en la especificación HTML 4.01)
Cómo lo comprobamos en ADDAW
En las auditorías de accesibilidad de ADDAW revisamos cada criterio de conformidad siguiendo este catálogo de técnicas: comprobamos si la web aplica una técnica suficiente y documentamos cada fallo común con capturas y el código afectado, para que el equipo de desarrollo sepa exactamente qué corregir. Los informes siguen la metodología del Observatorio de Accesibilidad y la norma UNE-EN 301 549.
Fuente y licencia
Traducción al español, no oficial, realizada por ADDAW a partir de la técnica H4 del documento «Techniques for WCAG 2.2» del W3C (versión del repositorio público del W3C a 22/10/2026). Copyright © W3C® (MIT, ERCIM, Keio, Beihang). Se publica conforme a la licencia de documentos del W3C. El texto normativo de referencia es el original en inglés; si detecta un error en la traducción, escríbanos.