Componentes UI esenciales

Botones, formularios, cards, modales, dropdowns y más: buenas prácticas para diseñar cada componente

10 min

Los componentes UI son los bloques de construcción de cualquier interfaz digital. Un botón, un campo de formulario, una card o un modal parecen elementos simples, pero cada uno tiene decisiones de diseño críticas que afectan a la usabilidad, la accesibilidad y la conversión.

Esta guía recorre los componentes más utilizados en interfaces web y móvil, con buenas prácticas concretas para cada uno. No se trata de cómo crearlos técnicamente, sino de cómo diseñarlos para que cumplan su función de forma efectiva.

Botones: el componente más importante

Los botones son el componente que más directamente impacta en la conversión. Un sistema de botones bien diseñado tiene una jerarquía clara: primario (acción principal), secundario (acciones alternativas) y terciario o ghost (acciones de baja prioridad). Cada nivel debe diferenciarse visualmente de forma inmediata.

Un botón primario debe tener fondo sólido con el color de acento de la marca, texto contrastado y un tamaño mínimo que invite al clic o tap. Los botones secundarios suelen usar un borde (outline) sin fondo sólido. Los botones ghost se presentan como texto enlace sin borde ni fondo. Es fundamental que cada botón tenga estados visibles: default, hover, active, focus y disabled.

  • Jerarquía clara: primario (relleno), secundario (outline), terciario (ghost)
  • Estados visibles: default, hover, active, focus, disabled, loading
  • Tamaño mínimo de tap target: 44×44 pt en móvil
  • Texto de acción específico: "Crear cuenta" en vez de "Aceptar"
  • Un solo botón primario visible por contexto

Formularios: reducir fricción al mínimo

Los formularios son el punto donde más usuarios abandonan. Cada campo adicional aumenta la fricción, por lo que la primera regla es pedir solo la información estrictamente necesaria. Un formulario de contacto con nombre, email y mensaje convierte significativamente más que uno con 10 campos.

Los campos deben tener labels visibles (no solo placeholder text, que desaparece al escribir), estados de validación claros (en tiempo real si es posible), mensajes de error específicos ("El email no tiene formato válido" en vez de "Error en el campo") y una distribución vertical en una sola columna para móvil.

  • Pide solo los campos estrictamente necesarios
  • Usa labels visibles permanentes, no solo placeholders
  • Validación en tiempo real con mensajes de error específicos
  • Una columna en móvil; dos columnas solo para campos relacionados (nombre + apellido)
  • Autocompletado habilitado (autocomplete attribute) para campos comunes
  • Botón de envío con texto descriptivo y estado de loading

Cards: contenido agrupado y escaneable

Las cards son contenedores visuales que agrupan información relacionada: un producto, un artículo, un perfil de usuario. Su fuerza está en la escaneabilidad: el usuario puede recorrer una cuadrícula de cards rápidamente y decidir cuál le interesa sin leer todo el contenido.

Una card efectiva tiene una jerarquía interna clara: imagen o elemento visual arriba, título prominente, descripción breve y acción (botón o enlace) al final. El error más común es meter demasiado contenido en una card: si necesitas scroll interno, la card es demasiado compleja y debería ser una página aparte.

  • Jerarquía interna: visual → título → descripción → acción
  • Tamaño consistente dentro del mismo grid de cards
  • No incluir scroll interno en una card
  • Toda la card clicable si tiene una única acción asociada
  • Sombra o borde sutil para delimitar sin excesivo contraste

Modales: interrumpir con propósito

Un modal es una ventana superpuesta que bloquea la interacción con el contenido de fondo. Su naturaleza es intrusiva por definición, por lo que debe usarse solo cuando la acción requiere atención inmediata: confirmar una eliminación, aceptar términos, completar un proceso que no puede posponerse.

Los errores más comunes con modales son usarlos para contenido que debería ser una página, anidar modales dentro de modales (experiencia confusa) y no permitir cerrarlos con la tecla Escape o haciendo clic en el overlay. Todo modal debe ser accesible con teclado y tener un foco atrapado (focus trap) para evitar que el usuario tabule fuera de él.

  • Usar solo para acciones que requieren atención inmediata
  • Permitir cierre con Escape, botón de cierre y clic en overlay
  • Focus trap: el foco del teclado no debe salir del modal
  • No anidar modales dentro de modales
  • En móvil, considerar bottom sheets como alternativa más ergonómica

Tablas: datos estructurados con claridad

Las tablas son el mejor componente para mostrar datos comparativos o tabulares: listados de productos, registros de usuarios, transacciones financieras. En desktop, una tabla bien diseñada con columnas alineadas, filas alternas en color y cabeceras fijas es extremadamente eficiente para escanear datos.

El reto está en la responsividad. Las tablas con muchas columnas no funcionan en móvil. Las estrategias más comunes son: scroll horizontal con la primera columna fija, layout de tarjetas (cada fila se convierte en una card), o mostrar solo las columnas esenciales con un botón "ver más" para los detalles.

  • Cabeceras fijas (sticky) para tablas largas
  • Filas con color alterno para facilitar la lectura horizontal
  • En móvil: scroll horizontal con primera columna fija, o layout de cards
  • Permitir ordenación por columna cuando los datos lo requieran
  • Paginación o scroll infinito para datasets grandes

Tooltips y popovers: información bajo demanda

Los tooltips son pequeñas cajas de texto que aparecen al hacer hover sobre un elemento para ofrecer contexto adicional. Son útiles para explicar iconos sin label, mostrar atajos de teclado o aclarar campos de formulario sin saturar la interfaz con texto permanente.

El problema principal de los tooltips es que dependen del hover, que no existe en dispositivos táctiles. La alternativa en móvil es el popover, que se activa con tap y permanece visible hasta que se cierra. Los tooltips deben contener solo texto breve; si necesitas contenido más complejo (imágenes, enlaces, formularios), un popover o un modal son más apropiados.

  • Usar para información contextual breve, no para contenido crítico
  • En móvil, sustituir por popovers activados con tap
  • Posicionamiento inteligente: el tooltip no debe salirse del viewport
  • Delay de aparición de ~300 ms para evitar apariciones accidentales
  • Accesibilidad: asociar con aria-describedby y permitir activación con focus

Puntos clave

  • Los botones necesitan jerarquía clara (primario, secundario, ghost) y todos los estados
  • Los formularios deben pedir solo lo imprescindible, con labels visibles y validación en tiempo real
  • Las cards funcionan cuando agrupan poca información con jerarquía interna clara
  • Los modales son intrusivos: reservarlos para acciones que requieren atención inmediata
  • Los dropdowns se justifican a partir de 7 opciones; para menos, radio buttons
  • Los tooltips deben tener alternativa táctil (popovers) para móvil

¿Necesitas un sistema de componentes coherente?

Diseñamos sistemas de componentes UI reutilizables, accesibles y documentados que aceleran el desarrollo y garantizan consistencia.