Saltar al contenido
SilktideAyuda

Valor de atributo ARIA no válido

Silktide comprueba el valor de cada atributo ARIA en tus páginas frente a los valores que el estándar permite para él. Un atributo con un valor incorrecto, como un estado de casilla de verificación "yes" en lugar de "true", es ignorado por los navegadores, por lo que el estado que describe nunca se anuncia.

<!-- Problema: "yes" no es un valor válido, se descarta el estado -->
<div role="checkbox" aria-checked="yes">Subscribe</div>

<!-- Solución: usa el token definido -->
<div role="checkbox" aria-checked="true">Subscribe</div>

Por qué es importante

Cada atributo define exactamente qué valores acepta, y los navegadores descartan cualquier otro en lugar de adivinar. Los errores suelen ser valores que parecen intuitivos: aria-expanded="1", aria-checked="yes", aria-level="0", que superan todas las pruebas visuales mientras que las personas usuarias de obtienen un control sin estado anunciado: un menú que nunca indica si está abierto, una casilla que nunca indica si está marcada.

Cómo solucionarlo

  1. Sustituye los valores informales por los tokens definidos por el atributo: true y false en lugar de yes, no, 1 o 0.
  2. Revisa los atributos numéricos: los atributos de conteo como aria-level y aria-rowindex empiezan en 1, no en 0.
  3. Elimina los atributos que queden vacíos, como aria-checked="": si no hay estado que transmitir, el atributo no debe estar presente.

Los valores exactos permitidos por cada atributo están listados en la referencia de atributos ARIA de MDN.

Cómo lo prueba Silktide

  1. Encuentra cada elemento de la página que tenga al menos un atributo aria-.
  2. Comprueba el valor de cada atributo con respecto al tipo que ARIA 1.2 define para él: atributos de verdadero/falso, atributos de tres estados como aria-checked (true, false, mixed), números y números enteros, y atributos con listas de palabras fijas como aria-live y aria-current.
  3. Informa de cada valor que no cumpla, indicando lo que se esperaba.

Los atributos que hacen referencia a IDs de elementos se comprueban en sus propias verificaciones, como Falta el ID de aria-controls, y los atributos de texto libre como aria-label aceptan cualquier texto.

Solución de problemas

El valor lo establece un framework

Las bibliotecas de componentes a veces serializan los estados de forma incorrecta (por ejemplo, renderizando aria-expanded="undefined"). La incidencia señala el elemento, pero la corrección suele estar en cómo se configura el componente o en una actualización de la biblioteca.

Esta comprobación no informa de nada aunque espero incidencias

Las pruebas de ARIA pueden desactivarse por sitio web. Comprueba la configuración avanzada del sitio web.

Más información

Última actualización

¿Le ha resultado útil esta página?