- Success Criterion 2.1.1
- Conformance level A
2.1.1 · Keyboard
Lesson overview · Keyboard
In plain language
All functionality available with a pointer must also be operable through a keyboard interface without requiring specific timings for individual keystrokes.
Who it affects
Blind users, people with motor disabilities, and anyone operating the interface without a pointer.
How to check
Unplug the mouse: Tab/Shift+Tab through the page, activate with Enter/Space, operate widgets with arrows — every feature must work.
Common misconception
Passing a Tab-key sweep is necessary but not sufficient. Full keyboard operability also means every control activates with Enter or Space, and no custom widget silently depends on a mouse-only event.
Learn more
Scenarios in this lesson
- Feature That Only Responds to Mouse Events, Not the Keyboard
- Element That Loses Focus the Instant It’s Reached by Keyboard
- Clickable Element Acting Like a Link With No Real Keyboard Role
- Clickable Div With No Keyboard Focus or Key Handling at All
- Focusable Element That Enter and Space Don’t Actually Activate
- Custom Dropdown That Can’t Be Operated by Keyboard Arrows
- Drag-and-Drop Feature With No Keyboard Alternative
- Slider or Carousel Operable Only by Swipe or Mouse Drag
- Hover-Only Menu With No Way to Open It by Keyboard
- Date Picker Grid That Can’t Be Navigated by Keyboard
- Canvas or WebGL App With No Keyboard Command Layer
- Infinite Scroll That Loads New Content Only on Mouse Scroll
- Custom Video Player Controls Unreachable by Keyboard
- Signature Pad Required With No Non-Drawing Alternative
- Feature Usable Only by Right-Click, With No Keyboard Route
- Interactive Control Removed From the Keyboard Tab Order
- Action That Only Works With a Double-Click
- Control That Requires Precisely Timed Key Presses
- Keyboard Focus Landing on Hidden or Inert Page Regions
- Scrollable Content Area That Can’t Be Reached by Keyboard
- Tooltip Trigger That Can’t Be Reached by Keyboard Focus
- Overlay or Menu With No Keyboard-Operable Close Control
- Control That Ignores Screen Reader Double-Tap Activation
- Hover-Only Controls Never Shown to Keyboard Users