Checkbox und Radio Button sind Formular-Auswahlfelder: Checkboxen erlauben die gleichzeitige Auswahl mehrerer Optionen, Radio Buttons beschränken die Auswahl auf genau eine Option aus einer Gruppe.
Rubrik: Mediendesign & Digitale Medien · Unterrubrik: UI-Komponenten · Niveau: Einsteiger Synonyme / Auch bekannt als: Kontrollkästchen, Auswahlfeld, Selection Control, Option Button (veraltet für Radio Button)
Was ist Checkbox & Radio Button?
Beide Komponenten zählen zu den Selection Controls – UI-Elemente, mit denen Nutzer aus einer Menge von Optionen wählen. Sie erscheinen klassisch in Formularen, Einstellungsmenüs, Filtersystemen und Onboarding-Flows. Der wesentliche Unterschied liegt in der Auswahllogik: Checkboxen sind unabhängig voneinander, Radio Buttons sind als Gruppe miteinander verbunden.
Erklärung
Checkbox – Mehrfachauswahl
Eine Checkbox ist ein quadratisches Element mit drei möglichen visuellen Zuständen:
- Unchecked: Leeres Kästchen
- Checked: Häkchen (✓) im Kästchen, oft mit Hintergrundfarbe
- Indeterminate: Strich (–) im Kästchen – zeigt an, dass eine Untergruppe teilweise ausgewählt ist (z. B. „Alle auswählen" wenn nur manche Unterelemente aktiviert sind)
Typische Einsatzgebiete: AGBs akzeptieren, Filterauswahl (mehrere Kategorien gleichzeitig), Aufgabenlisten, Einstellungen mit unabhängigen Optionen.
Radio Button – Einzelauswahl
Ein Radio Button ist ein kreisförmiges Element. Innerhalb einer Gruppe kann immer nur eine Option aktiv sein – die Auswahl einer neuen Option deaktiviert automatisch die vorherige.
Typische Einsatzgebiete: Zahlungsmethode wählen, Lieferoption auswählen, Geschlecht/Anrede auswählen, Bewertungsskalen.
States (Zustände) – beide Komponenten
| State | Beschreibung |
|---|---|
| Default Unselected | Neutrales leeres Element |
| Default Selected | Ausgewählt (Häkchen / ausgefüllter Kreis) |
| Hover | Visuelles Feedback bei Maus-Hover |
| Focus | Fokus-Indikator für Tastaturnavigation |
| Disabled Unselected | Nicht verfügbar, leer |
| Disabled Selected | Nicht änderbar, aber vorausgewählt |
| Error | Pflichtfeld nicht ausgefüllt |
Anatomie
Beide Komponenten bestehen aus: Control (das quadratische/runde Element), Label (Beschriftung rechts oder links), optionalem Helper Text (Zusatzinformation unter dem Label). Die klickbare Fläche sollte das gesamte Control-Label-Paar umfassen, nicht nur das kleine Symbol.
Accessibility (WCAG 2.1)
<input type="checkbox">und<input type="radio">verwenden – kein Custom-Element ohne ARIA- Radio Buttons müssen in
<fieldset>mit<legend>gruppiert werden name-Attribut verbindet Radio Buttons zu einer Gruppe- Klickbare Fläche: mindestens 44 × 44 px – das Label muss klickbar sein (
<label for="id">) - Fehler:
aria-invalid="true"undaria-describedbyauf die Fehlermeldung - Indeterminate-State: per JavaScript
element.indeterminate = truesetzen
Beispiele
- Gmail – Mehrfachauswahl: Das Kästchen links jeder E-Mail ist eine Checkbox. Aktiviert man alle Checkboxen einer Seite, zeigt die „Alle auswählen"-Checkbox oben den Indeterminate-State (–), wenn nur ein Teil ausgewählt ist.
- Booking.com – Filter: Die Sternebewertungs-Filter bei Hotelsuchen sind Checkboxen – mehrere Sternekategorien gleichzeitig filterbar. Zahlungsmethoden hingegen sind Radio Buttons.
- Mobile vs. Desktop: Touch-Oberflächen benötigen größere Tap-Targets. Material Design empfiehlt 48 × 48 px. iOS-Einstellungen nutzen oft Toggle Switches statt Checkboxen – kultureller Unterschied im Designsystem.
- Accessibility Best Practice: Amazon nutzt
<fieldset>/<legend>korrekt für Versandoptionen als Radio Button Gruppe – Screenreader liest „Lieferoption: Standard, Expresslieferung, Abholung" als zusammenhängende Gruppe vor. - Häufiger Fehler: Radio Buttons für unabhängige Optionen verwenden (z. B. „Ja" und „Nein" gleichzeitig aktivierbar sein sollen) – dafür sind Checkboxen richtig. Oder: Checkboxen statt Radio Buttons für gegenseitig ausschließende Optionen (z. B. Geschlecht) einsetzen.
In der Praxis
Figma: Checkbox und Radio Button als Komponenten mit Variants für alle States und Boolean-Property isChecked. Das Label als separaten Text-Layer im Auto Layout verbinden, damit die klickbare Fläche korrekt dargestellt wird. Indeterminate als eigene Variant anlegen.
HTML/CSS-Grundstruktur: ```html <!-- Checkbox Gruppe --> <div class="form-group"> <label><input type="checkbox" name="interests" value="design"> UX/UI Design</label> <label><input type="checkbox" name="interests" value="coding"> Webentwicklung</label> </div>
<!-- Radio Button Gruppe --> <fieldset> <legend>Bevorzugte Zahlungsmethode</legend> <label><input type="radio" name="payment" value="card"> Kreditkarte</label> <label><input type="radio" name="payment" value="paypal"> PayPal</label> <label><input type="radio" name="payment" value="invoice"> Rechnung</label> </fieldset> ```
Vergleich & Abgrenzung
| Komponente | Auswahl | Sofortige Wirkung |
|---|---|---|
| Checkbox | Mehrere unabhängig | Nein (erst bei Submit) |
| Radio Button | Genau eine aus Gruppe | Nein (erst bei Submit) |
| Toggle Switch | Ein/Aus (binär) | Ja (sofort) |
| Dropdown Select | Eine oder mehrere | Nein |
Die entscheidende Frage: Können mehrere Optionen gleichzeitig gelten? Ja → Checkbox. Nein → Radio Button. Sofortige Wirkung ohne Bestätigung nötig? → Toggle Switch.
Häufige Fragen (FAQ)
Ab wie vielen Optionen sollte ich statt Radio Buttons ein Dropdown verwenden? Als Faustregel gilt: Bei 2–5 Optionen sind Radio Buttons übersichtlicher (alle Optionen sofort sichtbar). Ab 6 Optionen oder auf kleinen Screens ist ein Dropdown platzsparender. Bei nur 2 Optionen (Ja/Nein) ist oft ein Toggle Switch oder ein einzelner Checkbox die elegantere Lösung.
Wie gestalte ich Custom Checkboxen barrierefrei? Das native <input type="checkbox"> ist visuell schwer zu stylen, aber semantisch korrekt. Am besten: natives Input visuell verstecken (opacity: 0, nicht display: none) und ein Custom-Element via CSS :checked-Pseudoklasse gestalten. Das Input bleibt im DOM und ist für Screenreader und Tastaturnavigation weiterhin erreichbar.
Verwandte Einträge
Weiterführend
- Nielsen Norman Group – „Checkboxes vs. Radio Buttons": nngroup.com/articles/checkboxes-vs-radio-buttons
- Material Design 3 – Checkboxes: m3.material.io/components/checkbox
- Apple Human Interface Guidelines – Selection Controls: developer.apple.com/design/human-interface-guidelines
- WebAIM – Accessible Form Controls: webaim.org/techniques/forms/controls
