Accesibilidad en Elementos Dinámicos: Mejora de Modales
Clase 31 de 35 • Curso de Accesibilidad Web
Resumen
¿Cómo se logra que un modal sea más accesible?
Para asegurar que nuestro sitio web sea más inclusivo, es crucial que los modales sean accesibles para personas que utilizan el teclado y lectores de pantalla. Imagina que abres un modal y el foco va a elementos en el fondo, lo cual es confuso. A continuación, te mostraremos cómo asegurar que el primer elemento de un modal reciba el enfoque inmediatamente al abrirlo.
¿Cómo enfocar el primer elemento de un modal?
-
Identificación del primer elemento: Primero, dentro del HTML, identifica el primer elemento del modal. Añade un atributo
id
al elemento, por ejemploid="modalHeader"
. -
Establecer tabindex: Coloca el atributo
tabindex="0"
a ese elemento. Esto asegura que el navegador lo pueda enfocar. -
Modificar JavaScript para enfocar: En la función que abre el modal, agrega una línea que enfoque el primer elemento del modal utilizando el método
focus()
. Esto se ubica inmediatamente después de abrir el modal.
document.getElementById('modalHeader').focus();
¿Cómo darle estilo al enfoque del modal?
Para mejorar la experiencia visual, es importante coordinar los estilos del enfoque usando CSS:
- Define una clase en CSS para el elemento enfocado que aplique un borde llamativo o sombreado.
- Usa colores y estilos que ya estén integrados en el sitio para mantener la coherencia visual.
#modalHeader:focus {
outline: 2px solid #000;
}
¿Cómo cerrar el modal con la tecla 'Esc'?
Cerrar el modal al presionar 'Esc' es un patrón de diseño común que mejora la experiencia del usuario:
- Función para cerrar con 'Esc': Añade una escucha de eventos en el documento para captar la tecla presionada.
document.addEventListener('keydown', function(event) {
if (event.keyCode === 27) { // 27 es el código de la tecla 'Esc'
closeModal(); // Función que cierra el modal
}
});
- Integración de la función: Ubica esta función dentro de tu script, preferiblemente después de todas las variables inicializadas pero antes del cierre del modal.
¿Cómo probamos la accesibilidad?
Para verificar que estos cambios funcionen correctamente:
- Prueba de teclado: Usa únicamente el teclado para navegar y abrir el modal, asegurándote de que el enfoque vaya al primer elemento y que la tecla 'Esc' lo cierre.
- Lector de pantalla: Utiliza un lector de pantalla para asegurarte de que todos los elementos del modal se describan apropiadamente.
Estos ajustes garantizan una experiencia más accesible para todos los usuarios, mejorando la navegabilidad de tu sitio web. Al continuar desarrollando, recuerda la importancia de la accesibilidad y busca siempre maneras de integrar prácticas inclusivas en tu diseño.