Keyboard (2.1.1)
All interactive functionality must be operable through a keyboard interface without requiring specific timing for individual keystrokes.
WCAG Reference
Applies to: WCAG 2.0, WCAG 2.1, WCAG 2.2 Introduced in: WCAG 2.0 | Level: A | Read the official specification →
What this rule checks
The scanner verifies that interactive elements (links, buttons, form controls, and custom widgets) are reachable and operable using keyboard alone — Tab, Shift+Tab, Enter, Space, and arrow keys as appropriate.
Why it matters
Users who cannot use a mouse — including people who rely on switch devices, voice control, or screen readers — depend entirely on keyboard access. If a control cannot be reached or activated by keyboard, those users are blocked.
Common failure patterns
- custom dropdowns or modals that respond only to mouse clicks
- drag-and-drop interfaces with no keyboard alternative
<div>or<span>elements used as buttons withouttabindexor keyboard event handlers- interactive components that require hover to reveal sub-menus
Remediation guidance
- use native interactive elements (
<button>,<a>,<select>) whenever possible - add
tabindex="0"and keyboard event listeners to custom interactive widgets - provide keyboard-equivalent actions for drag-and-drop, swipe, and hover interactions
- test the entire flow using only the keyboard (Tab, Enter, Space, Escape, arrows)
