Button
Button varianten, states en token mapping
Button
Buttons triggeren acties. Drie varianten: Primary, Secondary en Ghost.
Varianten
Primary
Secondary
Ghost
Sizes
| Size | Padding | Font | Gebruik |
|---|---|---|---|
| Small | px-3 py-1.5 | text-caption | Inline acties, tabellen |
| Default | px-4 py-2 | text-body | Standaard |
| Large | px-6 py-3 | text-subtitle | Hero CTAs, formulieren |
Token Mapping
| Property | Token |
|---|---|
| Background (primary) | --color-brand |
| Text (primary) | --color-label-on-color |
| Border (secondary) | --color-outline-strong |
| Border radius | --radius-s |
| Transition | --transition-fast |
Accessibility
- Altijd een duidelijk label (tekst of
aria-label) - Focus ring via
focus-visible:ring-2 focus-visible:ring-outline-active disabledstate vermindert opacity tot 50%- Minimaal touch target: 44x44px
⚠
Icon-only buttons
Buttons met alleen een icon MOETEN een aria-label hebben. Gebruik sr-only voor screen reader tekst als alternatief.