Fallo común WCAG 2.2 obsoleta
F4Texto que parpadea con text-decoration: blink (obsoleto)
Nombre oficial en el W3C: Fallo del criterio de conformidad 2.2.2 debido a usar text-decoration:blink sin un mecanismo para detenerlo en menos de cinco segundos
Técnica obsoleta: el W3C ya no la recomienda. |
En pocas palabras
Este fallo está obsoleto: los navegadores actuales ya no hacen parpadear el texto con text-decoration: blink. Describía un texto que parpadeaba sin parar y sin forma de detenerlo. La regla de fondo sigue vigente: un parpadeo de más de cinco segundos necesita un modo de pararlo.
Por qué es importante
Un texto que parpadea sin parar distrae mucho. A las personas con dificultades de atención les impide concentrarse en el resto de la página. A quien lee despacio o tiene baja visión le cuesta leer un texto que aparece y desaparece.
El criterio 2.2.2 pide que lo que parpadea solo durante más de cinco segundos se pueda pausar, detener u ocultar. Hoy el parpadeo se hace con animaciones CSS o con JavaScript, y la regla se aplica igual.
Cómo evitarlo
- No use
text-decoration: blinkni el antiguo elemento<blink>. Bórrelos si aparecen en código heredado. - Para destacar algo, prefiera un color, un icono o una etiqueta fija, como «Oferta».
- Si usa una animación de parpadeo, haga que termine sola en cinco segundos o menos. Por ejemplo, con un número de repeticiones limitado.
- Si debe durar más, ponga un botón para pausarla o detenerla.
- Respete la preferencia de reducir el movimiento con
@media (prefers-reduced-motion: reduce).
Cómo comprobarlo
- Busque
blinken las hojas de estilo, en los atributosstyley en el HTML. - Abra la página y observe si algo parpadea. Mida con un reloj cuánto dura.
- Si dura más de cinco segundos, compruebe que hay un control para pararlo y que funciona con el teclado.
Ejemplo
La alternativa actual: una animación que parpadea tres veces y se detiene sola a los tres segundos.
<style>
/* 3 repeticiones de 1 segundo: termina a los 3 segundos */
.oferta { animation: parpadeo 1s 3; }
@keyframes parpadeo { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
.oferta { animation: none; }
}
</style>
<p>Bicicleta urbana <span class="oferta">¡Rebajada a 299 €!</span></p>
Ver el texto completo del W3C (traducción al español)
Esta es una traducción no oficial al español de la técnica F4 de Techniques for WCAG 2.2, del W3C. Puede contener errores. El único documento oficial y normativo es la versión original en inglés, publicada en el sitio web del W3C.
Aplicabilidad
Hojas de estilo en cascada (CSS).
Descripción
CSS define el valor blink para la propiedad text-decoration. Cuando se utiliza, hace que cualquier texto de los elementos con esta propiedad parpadee a una velocidad predeterminada. El usuario no puede interrumpirlo, ni tampoco se puede desactivar como preferencia del agente de usuario. El parpadeo continúa mientras la página esté visible. Por tanto, el contenido que utiliza text-decoration:blink falla el criterio de conformidad porque el parpadeo puede continuar durante más de cinco segundos.
Ejemplos
Una página de listado de productos utiliza el estilo text-decoration:blink en un elemento para llamar la atención sobre los precios rebajados. Esto falla el criterio de conformidad porque los usuarios no pueden controlar el parpadeo.
<p>My Great Product <span style="text-decoration:blink">Sale! $44,995!</span></p>
Pruebas
Procedimiento
- Examinar los estilos en línea, las hojas de estilo internas y las hojas de estilo externas en busca de la propiedad text-decoration con el valor
blink. - Si se utiliza la propiedad, determinar si el ID, la clase o el elemento identificados por los selectores en los que se define esta propiedad se utilizan en el documento.
Resultados esperados
- Si las comprobaciones n.º 1 y n.º 2 son verdaderas, el contenido falla el criterio de conformidad.
Recursos
- CSS Text Decoration Module Level 3: text-decoration property (especificación de la propiedad text-decoration)
Cómo lo comprobamos en ADDAW
Este error es uno de los que buscamos en cada auditoría de ADDAW. Se lo entregamos con capturas y la forma de corregirlo.
Basado en la técnica F4 del W3C (WCAG 2.2). Explicación y ejemplos: ADDAW. Traducción no oficial del texto del W3C © W3C, licencia de documentos del W3C. ¿Ha visto un error? Escríbanos.