Ver contenido
Áreas Táctiles: Haciendo Elementos Interactivos Fáciles de Activar
Introducción
Las áreas táctiles son las zonas interactivas que los usuarios pueden tocar, hacer clic o presionar para activar controles como botones, enlaces y campos de formulario. WCAG 2.5.5 (Tamaño del Objetivo Mejorado) y 2.5.8 (Tamaño del Objetivo Mínimo) establecen requisitos de tamaño mínimo para asegurar que los usuarios puedan activar controles con precisión sin activar accidentalmente elementos adyacentes.
Para usuarios con discapacidades motoras, temblores o control motor fino limitado, las áreas táctiles pequeñas crean barreras significativas. Incluso los usuarios sin discapacidades se benefician de objetivos más grandes—especialmente en dispositivos móviles, bajo luz solar intensa o mientras realizan múltiples tareas.
¿Qué Son las Áreas Táctiles?
El Concepto Básico
Un área táctil es la zona clicable/tocable de un elemento interactivo:
<!-- El área táctil del botón es su área visible más el padding -->
<button class="action-btn">
Enviar Formulario
</button>
<style>
.action-btn {
/* Tamaño visual */
min-width: 44px;
min-height: 44px;
padding: 12px 24px;
}
</style>
El área táctil incluye:
- El elemento visible (botón, enlace, icono)
- Cualquier padding que expanda el área clicable
- El área total que responde a eventos de puntero
Quién Se Beneficia
| Tipo de Usuario | Desafío | Solución |
|---|---|---|
| Discapacidades motoras | Dificultad con movimientos precisos | Objetivos más grandes reducen la precisión necesaria |
| Temblores (Parkinson) | Movimientos involuntarios de mano | Más espacio previene toques erróneos |
| Artritis | Destreza limitada en dedos | Áreas más grandes son más fáciles de alcanzar |
| Baja visión | Dificultad para ver controles pequeños | Objetivos más grandes son más fáciles de localizar |
| Usuarios mayores | Control motor reducido | Tamaños generosos mejoran la precisión |
| Usuarios móviles | Desafíos de entrada táctil | Objetivos adecuados para toques con dedos |
Requisitos WCAG
2.5.8 Tamaño del Objetivo (Mínimo) - Nivel AA
Nuevo en WCAG 2.2, este criterio requiere:
El tamaño del objetivo para entradas de puntero es al menos 24 por 24 píxeles CSS, excepto cuando:
- Espaciado: Los objetivos de menor tamaño tienen suficiente espaciado para que un círculo de 24×24 pueda colocarse en cada objetivo sin superposición
- Equivalente: Otro objetivo para la misma función tiene 24×24 o más
- En línea: El objetivo está en una oración o bloque de texto
- Control del Agente de Usuario: El tamaño del objetivo es determinado por el navegador
- Esencial: La presentación específica es legalmente requerida o esencial
2.5.5 Tamaño del Objetivo (Mejorado) - Nivel AAA
Para accesibilidad mejorada:
El tamaño del objetivo para entradas de puntero es al menos 44 por 44 píxeles CSS, excepto por las mismas excepciones que 2.5.8.
¿Por Qué Estos Tamaños?
| Tamaño | Nivel | Justificación |
|---|---|---|
| 24×24 px | AA | Mínimo para accesibilidad básica |
| 44×44 px | AAA | Basado en recomendaciones de Apple/iOS |
| 48×48 dp | Recomendación de Material Design |
Problemas Comunes de Áreas Táctiles
1. Objetivos Demasiado Pequeños
<!-- MAL: Botón de icono sin padding -->
<button class="icon-btn">
<svg width="16" height="16"><!-- icono --></svg>
</button>
<style>
.icon-btn {
padding: 0;
/* Tamaño total: 16×16 - ¡muy pequeño! */
}
</style>
2. Objetivos Demasiado Cercanos
<!-- MAL: Botones sin espaciado adecuado -->
<div class="button-group">
<button>Guardar</button>
<button>Cancelar</button>
<button>Eliminar</button>
</div>
<style>
.button-group button {
margin: 2px; /* ¡No hay suficiente espaciado! */
}
</style>
3. Área Clicable Más Pequeña que la Visual
<!-- MAL: Visual grande pero área clicable pequeña -->
<div class="card" onclick="handleClick()">
<img src="thumbnail.jpg" alt="Producto">
<a href="/producto" class="tiny-link">Ver Detalles</a>
</div>
<style>
.tiny-link {
font-size: 10px;
/* El enlace es diminuto a pesar de la tarjeta grande */
}
</style>
4. Áreas Táctiles Ocultas
/* MAL: El padding no cuenta si overflow está oculto */
.container {
overflow: hidden;
}
.container button {
padding: 20px;
margin: -10px; /* ¡El padding se corta! */
}
Tamaño Adecuado de Áreas Táctiles
Tamaño Mínimo (Nivel AA)
/* Cumple el requisito mínimo de 24×24 */
.interactive-element {
min-width: 24px;
min-height: 24px;
}
/* Mejor: Agregar padding a elementos pequeños */
.icon-button {
padding: 8px;
/* Si el icono es 16×16, el total se convierte en 32×32 */
}
Tamaño Mejorado (Nivel AAA)
/* Cumple el requisito mejorado de 44×44 */
.touch-target {
min-width: 44px;
min-height: 44px;
display: inline-flex;
align-items: center;
justify-content: center;
}
Usando la Excepción de Espaciado
/* Objetivos pequeños con espaciado adecuado */
.nav-link {
padding: 4px 8px;
margin: 12px; /* Crea 24px de separación entre objetivos */
}
Midiendo Áreas Táctiles
Qué Cuenta Como Tamaño del Objetivo
- Área clicable - El área que responde a clics/toques
- Límites visuales - Lo que los usuarios ven y apuntan
- Área de detección - Zona de detección de puntero del navegador
Píxeles CSS vs Píxeles Físicos
Los requisitos de área táctil usan píxeles CSS, no píxeles de dispositivo:
/* 44 píxeles CSS = 44px en tu hoja de estilos */
/* En pantalla Retina 2x = 88 píxeles físicos */
/* En pantalla 3x = 132 píxeles físicos */
.button {
min-width: 44px; /* píxeles CSS */
min-height: 44px; /* píxeles CSS */
}
Probando Áreas Táctiles
Prueba Manual Rápida
- Usar DevTools del navegador para medir dimensiones del elemento
- Verificar estilos computados para ancho/alto
- Verificar que el área clicable coincide con el área visual
- Probar el espaciado entre objetivos adyacentes
Qué Verificar
- [ ] Todos los elementos interactivos son al menos 24×24 píxeles CSS
- [ ] Las áreas táctiles tienen espaciado adecuado (sin áreas de detección superpuestas)
- [ ] Los botones de icono tienen padding suficiente
- [ ] El texto de enlace tiene área clicable adecuada
- [ ] Los campos de formulario cumplen los requisitos de tamaño
Herramientas para Pruebas
- DevTools del navegador - Medir dimensiones de elementos
- axe DevTools - Reporta problemas de tamaño de objetivo
- WAVE - Resaltado visual de objetivos pequeños
- Pruebas en dispositivo móvil - Pruebas táctiles del mundo real
Recomendaciones de Diseño
Más Allá de los Requisitos Mínimos
| Contexto | Tamaño Recomendado |
|---|---|
| Acciones primarias | 48×48 px o más |
| Elementos de navegación | 44×44 px mínimo |
| Campos de formulario | 44×44 px área táctil |
| Acciones secundarias | 36×36 px mínimo |
| Interfaces densas | 24×24 px con espaciado |
Guías de Espaciado
/* Asegurar espaciado mínimo de 24px */
.button-group {
gap: 24px;
}
/* O usar margen */
.action-button {
margin: 12px; /* 12px × 2 = 24px entre botones */
}
Resumen de Mejores Prácticas
| Hacer | No Hacer |
|---|---|
| Usar min-width/min-height para dimensionado | Depender solo del contenido para dimensionar objetivos |
| Agregar padding a iconos pequeños | Usar áreas clicables diminutas |
| Proporcionar espaciado entre objetivos | Agrupar elementos interactivos |
| Probar en dispositivos táctiles reales | Solo probar con ratón |
| Considerar todos los métodos de entrada | Diseñar solo para escritorio |
Artículos Relacionados
- Guía de Implementación de Áreas Táctiles - Patrones detallados
- Guía de Accesibilidad de Formularios - Tamaño de campos de formulario
- Hub de Cumplimiento WCAG - Todos los evaluadores de accesibilidad