Labeling
Switch labels should describe the controlled feature or state, not the action of toggling it.
Keyboard Behavior
AnnouncementFocus the demo and press a key from the table.
| Key | Action |
|---|---|
| Space | Turns the focused switch on or off. |
| TabShift + Tab | Moves the focus to the next or previous switch. Each switch is its own tab stop. |
- The visible row should clearly read as one binary setting.
Focus Behavior
- Focus should land on the native input.
- Visible focus styling should remain obvious on the switch track.
Screen Reader Semantics
- Hidden input participation helps preserve native checked semantics.
- The label should make the enabled state understandable without extra guesswork.
- Switches should be reserved for immediate binary settings, not option comparison.
Form Semantics
- Use
SwitchInputwhen the switch should participate in native forms. - Product copy should make it clear whether the switch applies immediately or on submit.
Accessibility Risks
- Labels like "Turn on" that do not describe the controlled setting.
- Missing
SwitchInput. - Using a switch where a radio group or checkbox list better matches the product model.