presentational-children-focusable-absent

Los roles con hijos presentacionales no deben contener contenido enfocable

automaticWCAG 4.1.2 (A)confianza: highgravedad: seriousrobust

Comprueba que un elemento cuyo rol hace presentacionales a sus hijos (button, checkbox, img, option, radio, slider, switch, tab, ...) no contenga ningún descendiente que reciba una parada de tabulación.

Ámbito de aplicación. Se aplica a elementos cuyo rol semántico es uno de los roles WAI-ARIA definidos como con hijos presentacionales (button, checkbox, img, menuitemcheckbox, menuitemradio, meter, option, progressbar, radio, scrollbar, separator, slider, switch, tab, además de doc-pagebreak y graphics-symbol de los módulos DPUB-ARIA/Graphics-ARIA, que heredan el mismo rasgo). El rol puede ser explícito (role="tab") o nativo (<button>, <meter>, <progress>, <option>).

Resultado esperado. Ningún descendiente del elemento forma parte de la navegación secuencial por foco. El mecanismo de hijos presentacionales elimina a todos los descendientes del árbol de accesibilidad, así que un descendiente que aún recibe una parada de tabulación obtiene el foco sin rol ni nombre que anunciar.

Ejemplos

pass
<button>Save</button>

No hay contenido presentacional que además resulte ser enfocable.

fail
<button>
Save
<span role="button" aria-label="save options" aria-expanded="false" tabindex="0"></span>
</button>

El `<span>` anidado tiene su propio rol interactivo y parada de tabulación dentro del contenido presentacional del botón.

Ver código fuente