Tendencias de Diseño

Color en el Diseño de Formularios: Validación, Enfoque y Estados de Error

11 min de lectura

Los formularios son las superficies más interactivas en cualquier producto digital. Son donde los usuarios crean cuentas, completan compras, envían solicitudes y configuran preferencias. Sin embargo, el diseño de formularios también es donde el color se usa más a menudo de forma incorrecta — aplicado de manera inconsistente, sin cumplir requisitos de accesibilidad, o comunicando el estado solo mediante color de maneras que excluyen a usuarios con deficiencias en la percepción del color.

El desafío del diseño de color en formularios es que debe comunicar múltiples estados simultáneos — predeterminado, enfocado, relleno, inválido, válido y deshabilitado — en campos, etiquetas, botones y texto de ayuda, mientras permanece accesible y visualmente cohesivo. Esta guía cubre el vocabulario completo de color en el diseño de formularios.


Colores de Borde de Campo y Estados

El borde de un campo de texto es la señal visual principal de su estado actual. Cada estado necesita un tratamiento de color distinto e inequívoco que comunique significado sin depender de ninguna otra señal.

Los Cinco Estados Básicos del Campo

El estado predeterminado es la apariencia en reposo de un campo vacío sin enfoque. El borde debe ser claramente visible pero discreto — no debe competir por atención con el contenido circundante. Un gris medio-claro como #D1D5DB o #CBD5E1 funciona bien sobre un fondo blanco. El contraste del propio borde contra el fondo importa menos para la legibilidad (el borde es decorativo, no texto), pero debe ser distinguible.

El estado de hover proporciona una señal sutil de affordance antes de que el usuario se comprometa a la interacción. Un ligero oscurecimiento del borde — de #D1D5DB a #9CA3AF — es suficiente. Este micro-estado les dice a los usuarios "esto es interactivo" sin el peso visual completo del estado de enfoque.

El estado de enfoque es el más crítico y el más frecuentemente mal diseñado. Cuando el cursor o el foco del teclado del usuario está en un campo, el borde debe indicar claramente la interacción activa. Un color de marca sólido — azules como #3B82F6 o #2563EB son comunes — aplicado con total opacidad a 2px de grosor es el enfoque estándar. La transición de gris a azul es una señal fuerte y legible.

El estado relleno (enfocado con contenido) típicamente usa el mismo color de borde que el estado de enfoque. Algunos sistemas de diseño lo diferencian con un borde ligeramente más oscuro o un pequeño icono indicador para confirmar que existe contenido.

El estado deshabilitado usa un peso visual significativamente reducido. Un fondo de #F9FAFB y un borde de #E5E7EB señalan que el campo no es actualmente interactivo. El texto de un campo deshabilitado debe ser aproximadamente #9CA3AF — lo suficientemente claro para sugerir inactividad, pero aún legible.

Grosor del Borde y Peso Visual

Los bordes predeterminados de 1px son comunes, pero los bordes de enfoque de 2px proporcionan una diferenciación de estado más clara, particularmente para usuarios en entornos brillantes o en pantallas de menor resolución. Muchos sistemas de diseño usan 1px predeterminado y 2px de enfoque como pareja estándar.

Usa el verificador de contraste para verificar que el texto del campo relleno (#111827 o similar) mantiene al menos 4.5:1 de contraste contra el fondo del campo en todos los estados.


Color e Visibilidad del Anillo de Enfoque

El anillo de enfoque — también llamado indicador de enfoque o contorno de enfoque — es uno de los elementos más críticos para la accesibilidad en cualquier interfaz. Es el mecanismo principal mediante el cual los usuarios de teclado rastrean su posición en el documento. El Criterio de Éxito 2.4.11 de WCAG 2.2 (Apariencia del Foco) requiere que los indicadores de foco cumplan con requisitos mínimos de tamaño y contraste.

Qué Hace Efectivo a un Anillo de Enfoque

Tamaño: El indicador de foco debe tener un área perimetral mínima de 2 píxeles CSS. Un borde sólido de 2px o un contorno desplazado de 3px satisfacen ambos este requisito.

Contraste: El anillo de enfoque debe tener una relación de contraste de al menos 3:1 entre los estados enfocado y no enfocado del componente. Además, el propio indicador de foco debe contrastar al menos 3:1 contra los colores adyacentes.

Visibilidad en cualquier fondo: Dado que el foco puede aterrizar en elementos sobre una variedad de colores de fondo — formularios blancos, secciones de color, fondos de imagen — usar un enfoque de doble anillo maneja todos los contextos. Un anillo interno blanco (#FFFFFF) más un anillo externo de color garantiza la visibilidad tanto contra fondos claros como oscuros:

:focus-visible {
  outline: 3px solid #2563EB;
  outline-offset: 2px;
  box-shadow: 0 0 0 2px #FFFFFF;
}

El box-shadow blanco crea un halo blanco entre el elemento y el contorno azul, garantizando que el contorno azul siempre sea visible independientemente del color de fondo debajo.

Elección del Color del Anillo de Enfoque

El color del anillo de enfoque es típicamente el color interactivo principal de la marca — el mismo azul usado para enlaces, estados activos y botones principales. Esta consistencia ayuda a los usuarios a entender que el anillo señala "aquí es donde ocurre la interacción" en lugar de "esto tiene un error" o "esto ha sido completado."

Si el color principal de tu marca es un color oscuro como #1E3A5F, puede que no proporcione suficiente contraste como anillo de enfoque en fondos oscuros. En esos casos, es apropiada una variante más clara y más saturada del generador de tonos para uso específico de enfoque.

Nunca elimines los anillos de enfoque. El antipatrón outline: none elimina una función de accesibilidad esencial. Si el anillo de enfoque predeterminado del navegador es visualmente incompatible con tu diseño, reemplázalo con un estilo de enfoque personalizado — no simplemente lo ocultes.


Rojo de Error vs Verde de Éxito: Valores de Color Semánticos

Los estados de error y éxito son las decisiones de color más trascendentes en el diseño de formularios. Comunican si la entrada del usuario es aceptable, lo que afecta directamente si los usuarios pueden completar su objetivo.

Colores del Estado de Error

El color de error convencional es el rojo, y las convenciones existen por buenas razones: el rojo como "stop/peligro" se entiende interculturalmente y está profundamente reforzado por semáforos, etiquetas de advertencia y décadas de interfaces de software. Sin embargo, el tono específico de rojo importa significativamente.

Color de error principal para bordes e iconos de formulario: #DC2626 (un rojo medio con buen contraste) o #EF4444 (ligeramente más saturado). Evita los rojos muy oscuros como #7F1D1D (demasiado cercano al marrón oscuro, legibilidad reducida) y los rojos muy brillantes como #FF0000 (agresivo, falla la coherencia del sistema de diseño).

Tinte de fondo de error: Un tinte rojo muy claro aplicado al fondo del campo refuerza el estado de error más allá del borde solo. #FEF2F2 es el fondo rojo claro estándar usado en el red-50 de Tailwind, proporcionando una superficie de error perceptible pero no agresiva.

Texto de error (texto de ayuda): El texto de ayuda rojo debajo del campo debe ser el mismo rojo usado para el borde — #DC2626 o #B91C1C — del mismo tamaño que el texto de ayuda regular. Si el mensaje de error se renderiza en tamaño pequeño (menos de 18px), requiere 4.5:1 de contraste contra el fondo blanco. Verifica #DC2626 contra #FFFFFF en el verificador de contraste — logra aproximadamente 5.7:1, cumpliendo AA.

Colores del Estado de Éxito

El verde de éxito comunica que la entrada ha sido validada y aceptada. La familia de colores de éxito estándar:

Borde de éxito: #16A34A (green-600 de Tailwind) o #22C55E (green-500). Green-600 proporciona mejor contraste contra fondos blancos, lo que lo hace preferible para bordes e iconos.

Tinte de fondo de éxito: #F0FDF4 (green-50) — justo el tinte suficiente para señalar el éxito sin abrumar el formulario.

Icono de éxito: Un icono de marca de verificación en #16A34A es la affordance estándar de éxito. Posiciónalo en el borde final del campo (lado derecho para diseños LTR).

Contraste de Color para Texto de Error y Éxito

Elemento Primer plano Fondo Contraste ¿Cumple AA?
Texto de error #DC2626 #FFFFFF ~5.7:1
Texto de error sobre fondo de error #B91C1C #FEF2F2 ~5.4:1
Texto de éxito #16A34A #FFFFFF ~5.0:1
Texto de éxito sobre fondo de éxito #15803D #F0FDF4 ~5.1:1

Siempre verifica estas combinaciones usando el verificador de contraste cuando uses tonos no estándar.


Estados de Error Accesibles Más Allá del Color Únicamente

WCAG 1.4.1 (Uso del Color) prohíbe explícitamente usar el color como el único medio de transmitir información. Este requisito se viola más comúnmente en el diseño de validación de formularios, donde muchos equipos usan solo el borde rojo para señalar un error.

Un estado de error comunicado únicamente mediante un borde rojo falla a usuarios con: - Protanopía (daltonismo rojo-verde, ~1% de los hombres) - Deuteranopía (forma más común de daltonismo rojo-verde, ~6% de los hombres) - Tritanopía (daltonismo azul-amarillo) - Acromatopsia (daltonismo completo) - Condiciones de baja visión donde la percepción del color se reduce

Señales Redundantes Requeridas

Icono: Un icono de error (típicamente un signo de exclamación o X) debe acompañar el cambio de color. Posiciónalo de manera consistente — dentro del campo en el borde final, o a la izquierda del texto de ayuda. El icono es una señal independiente del color de que existe un error.

Mensaje de texto: Un mensaje de error explícito debajo del campo es la señal redundante más importante. "Por favor ingresa una dirección de email válida" es inequívoca independientemente de la percepción del color. El mensaje debe aparecer inmediatamente debajo del campo con error, no solo en un resumen al principio o al final del formulario.

Anotación de etiqueta: Algunos sistemas de diseño agregan un texto "(Requerido)" o un indicador de error a la propia etiqueta, proporcionando una señal adicional sin color.

Tratamiento del borde: Cambiar el grosor del borde (de 1px a 2px) o agregar un estilo de borde cambiado proporciona una señal basada en forma que acompaña el cambio de color.

Pruebas con el Simulador de Daltonismo

Usa el simulador de daltonismo para ver los estados de tu formulario bajo diferentes condiciones visuales. Un estado de error correctamente diseñado debe ser claramente distinguible del estado de éxito incluso en simulación en escala de grises. Si tus estados de error y éxito se ven idénticos sin color, necesitan diferenciación adicional.

La prueba estándar: toma una captura de pantalla de tu formulario mostrando simultáneamente un estado de error y un estado de éxito, luego véla en escala de grises o a través de una simulación de protanopía. Los dos estados deben permanecer claramente distinguibles.


Señales de Color en Formularios de Múltiples Pasos

Los formularios de múltiples pasos — flujos de pago, secuencias de incorporación, asistentes de registro — tienen un desafío adicional de diseño de color: el indicador de pasos. La secuencia de pasos debe comunicar simultáneamente progreso, completación, posición actual y pasos próximos.

Estados del Indicador de Pasos

Los pasos completados usan el color primario de la marca como un círculo relleno o marca de verificación — #2563EB o cualquier color primario de marca que sirva como color interactivo. El relleno señala "esto está hecho." Un icono de marca de verificación dentro del círculo relleno proporciona una señal redundante de completación sin color.

El paso actual se muestra típicamente con una versión solo de borde del color primario — un círculo sin relleno con un borde de 2px en el mismo color primario — o con un estado relleno enfatizado con una sombra o anillo alrededor. La distinción visual de los pasos completados debe ser clara: completado es pasado, actual es presente.

Los pasos próximos usan un gris neutro — #E5E7EB o #D1D5DB — indicando que estos pasos aún no son alcanzables o relevantes. El número del paso debe ser visible dentro del círculo gris en un gris más oscuro como #6B7280.

Las líneas de conexión entre pasos adaptan su relleno para reflejar el progreso: la sección del paso 1 al paso 2 se rellena con el color primario de la marca una vez que el paso 1 está completado. La sección del paso 2 al paso 3 permanece gris hasta que el paso 2 esté completo. Esto proporciona un medidor de progreso visual dentro del indicador de pasos.

Retroalimentación de Validación Sección por Sección

En formularios largos de múltiples pasos, cada sección o paso debe mostrar su estado de validación antes de que el usuario pase al siguiente. Una marca de verificación verde o un sutil tinte de fondo verde en una sección completada y validada proporciona refuerzo positivo y confirma que la entrada del usuario ha sido aceptada. Un indicador rojo en una sección con errores — combinado con un recuento explícito como "3 campos necesitan atención" — le dice a los usuarios dónde regresar.

El principio clave: usa el color para comunicar el estado de forma eficiente de un vistazo, pero siempre combina cada señal de color con una señal de texto o icono. Un usuario que no puede distinguir el rojo del verde aún debe poder navegar el formulario y entender qué requiere su atención.

Color de la Barra de Progreso

Una barra de progreso sobre o bajo el indicador de pasos puede complementar o reemplazar los círculos de pasos para flujos más simples. La parte rellena usa el color primario de la marca, y la parte no rellena usa un neutro como #E5E7EB. Evita usar un color diferente para la barra de progreso que para el indicador de paso activo — la inconsistencia del color primario de la marca en el mismo elemento de interfaz crea confusión.


Conclusiones Clave

  • Define colores explícitos para cada estado del campo: predeterminado (borde #D1D5DB), hover (borde ligeramente más oscuro), enfoque (borde del color primario de la marca, 2px), error (borde #DC2626 + tinte de fondo), éxito (borde #16A34A + icono) y deshabilitado (borde #E5E7EB, texto con opacidad reducida).
  • Los anillos de enfoque deben ser claramente visibles — usa un enfoque de doble anillo (halo blanco + contorno de color) para garantizar la visibilidad en cualquier fondo. Nunca elimines los contornos de enfoque sin proporcionar un reemplazo.
  • Los estados de error deben incluir un icono, un mensaje de texto y un cambio de color — nunca solo color. Prueba con el simulador de daltonismo para verificar que los estados de error y éxito sigan siendo distinguibles en condiciones simuladas de daltonismo.
  • El verde de éxito (#16A34A) y el rojo de error (#DC2626) deben lograr al menos 4.5:1 de contraste contra sus fondos cuando se usan como texto. Verifica ambas combinaciones en el verificador de contraste.
  • Los indicadores de pasos en formularios de múltiples pasos necesitan al menos tres estados visualmente distintos: completado (color primario relleno + icono), actual (delineado o enfatizado) y próximo (gris neutro). Las líneas de conexión deben rellenarse progresivamente con el color primario de la marca para proporcionar una señal de progreso adicional.
  • Las elecciones de color para los estados de formulario son algunas de las decisiones de accesibilidad más trascendentes en un producto — hazlas bien en el sistema de diseño para que cada formulario herede automáticamente un comportamiento accesible.

Colores relacionados

Marcas relacionadas

Herramientas relacionadas