Saltar al contenido

Button

Beta

Dispara una acción. Cuatro estilos para marcar jerarquía, cuatro tamaños, dos radios y cuatro formas de llevar icono.

Abrir en Figmaregistry/ds/button.tsx

Cuándo usarlo

Un Button hace algo: envía, guarda, confirma, abre un flujo. Si lo que pasa al hacer clic es ir a otro lugar, probablemente sea un link.

Usá Button para…Usá otra cosa para…
Enviar un formulario, confirmar, guardar.Navegar dentro de un texto → Link.
Abrir un modal, un drawer o un flujo.Elegir entre opciones excluyentes → Tabs o Radio.
La llamada a la acción de una sección.Prender/apagar una preferencia → Switch.
Acciones de utilidad con icono (buscar, cerrar).Filtrar o etiquetar → Chip.

Anatomía

  1. 1Contenedor — Da el alto (padding + contenido), el fondo y el radio. Es el área clickeable.
  2. 2Icono izquierdo — Opcional. Refuerza el significado de la acción (agregar, descargar).
  3. 3Label — Verbo + objeto. Una sola línea, nunca se corta.
  4. 4Icono derecho — Opcional. Indica dirección o consecuencia (avanzar, abrir afuera).

Jerarquía de estilos

El estilo no es estética: es cuánto grita la acción. Cada sección tiene un solo Fill; el resto acompaña.

EstiloÉnfasisPara qué
FillMáximoLa acción principal de la sección. Una sola.
StrokeAltoSecundaria con peso: la alternativa real a la principal.
TonalMedioSecundaria suave, acciones repetidas en listas y cards.
TextBajoTerciaria, cancelar, "ver más". La zona gris con el link.
Sí

Un solo Fill marca el camino. Las demás acciones bajan de énfasis en orden.

No

Si todo es principal, nada lo es: la persona tiene que leer los tres para decidir.

Tamaños

SizeAltoDónde
sm32UI densa: tablas, toolbars, filtros.
md40El default de producto.
lg48Formularios protagonistas y mobile.
xl64Heros y CTAs de marketing.

En una misma fila, todos los controles comparten tamaño — un Input md va con un Button md.

Radius

El radio lo decide el contexto de la página, no el gusto: Full para superficies de marketing y vida estudiantil, Semi para lo institucional. Ver Radius.

Sí

Mismo radio y mismo tamaño en los botones que conviven.

No

No mezcles Full con Semi ni tamaños distintos en el mismo grupo.

Iconos

Cuatro modos, iguales a la propiedad Icon del componente en Figma:

  • inside (default) — el glifo directo, en el color del label. UI de producto.
  • pill — el glifo sobre un círculo. CTAs donde el botón es protagonista.
  • outside — un círculo flotante del alto del botón, separado 4 px. Marketing.
  • iconOnly — solo el glifo. Acciones de utilidad reconocibles, siempre con aria-label.

Cargando

Cuando la acción tarda, loading reemplaza el contenido por un spinner sin cambiar el ancho del botón, bloquea el segundo clic y mantiene el foco donde estaba. Usalo cuando la espera supera ~1 segundo; para menos, no muestres nada.

Ancho completo

fullWidth para formularios angostos, mobile y pies de modal. En desktop, un botón de ancho completo en una columna ancha se vuelve una barra: evitalo.

Contenido

  • Verbo + objeto: "Descargar programa", "Crear cuenta". No "OK", no "Enviar" a secas si hay ambigüedad.
  • Mayúscula solo al inicio ("Guardar cambios", no "Guardar Cambios").
  • 2–3 palabras. Si necesitás más, el contexto alrededor está fallando.
  • Sin puntuación final ni "haz clic".
  • El mismo label para la misma acción en todo el producto.
Sí

Corto, específico, empieza con verbo.

No

El botón no explica la interfaz. Y un label largo se rompe en mobile.