WCAG 2.2 — All success criteria
Every WCAG 2.2 success criterion in plain language, with React code examples and notes on how AI coding tools tend to get each one wrong. Pilot pages are linked; the rest are coming.
Perceivable
- A1.1.1Non-text Content
- A1.2.1Audio-only and Video-only (Prerecorded)
- A1.2.2Captions (Prerecorded)
- A1.2.3Audio Description or Media Alternative (Prerecorded)
- AA1.2.4Captions (Live)
- AA1.2.5Audio Description (Prerecorded)
- AAA1.2.6Sign Language (Prerecorded)
- AAA1.2.7Extended Audio Description (Prerecorded)
- AAA1.2.8Media Alternative (Prerecorded)
- AAA1.2.9Audio-only (Live)
- A1.3.1Info and Relationships
- A1.3.2Meaningful Sequence
- A1.3.3Sensory Characteristics
- AA1.3.4Orientation
- AA1.3.5Identify Input Purpose
- AAA1.3.6Identify Purpose
- A1.4.1Use of Color
- A1.4.2Audio Control
- AA1.4.3Contrast (Minimum)
- AA1.4.4Resize Text
- AA1.4.5Images of Text
- AAA1.4.6Contrast (Enhanced)
- AAA1.4.7Low or No Background Audio
- AAA1.4.8Visual Presentation
- AAA1.4.9Images of Text (No Exception)
- AA1.4.10Reflow
- AA1.4.11Non-text Contrast
- AA1.4.12Text Spacing
- AA1.4.13Content on Hover or Focus
Operable
- A2.1.1Keyboard
- A2.1.2No Keyboard Trap
- AAA2.1.3Keyboard (No Exception)
- A2.1.4Character Key Shortcuts
- A2.2.1Timing Adjustable
- A2.2.2Pause, Stop, Hide
- AAA2.2.3No Timing
- AAA2.2.4Interruptions
- AAA2.2.5Re-authenticating
- AAA2.2.6Timeouts
- A2.3.1Three Flashes or Below Threshold
- AAA2.3.2Three Flashes
- AAA2.3.3Animation from Interactions
- A2.4.1Bypass Blocks
- A2.4.2Page Titled
- A2.4.3Focus Order
- A2.4.4Link Purpose (In Context)
- AA2.4.5Multiple Ways
- AA2.4.6Headings and Labels
- AA2.4.7Focus Visible
- AAA2.4.8Location
- AAA2.4.9Link Purpose (Link Only)
- AAA2.4.10Section Headings
- AA2.4.11Focus Not Obscured (Minimum)
- AAA2.4.12Focus Not Obscured (Enhanced)
- AAA2.4.13Focus Appearance
- A2.5.1Pointer Gestures
- A2.5.2Pointer Cancellation
- A2.5.3Label in Name
- A2.5.4Motion Actuation
- AAA2.5.5Target Size (Enhanced)
- AAA2.5.6Concurrent Input Mechanisms
- AA2.5.7Dragging Movements
- AA2.5.8Target Size (Minimum)
Understandable
- A3.1.1Language of Page
- AA3.1.2Language of Parts
- AAA3.1.3Unusual Words
- AAA3.1.4Abbreviations
- AAA3.1.5Reading Level
- AAA3.1.6Pronunciation
- A3.2.1On Focus
- A3.2.2On Input
- AA3.2.3Consistent Navigation
- AA3.2.4Consistent Identification
- AAA3.2.5Change on Request
- A3.2.6Consistent Help
- A3.3.1Error Identification
- A3.3.2Labels or Instructions
- AA3.3.3Error Suggestion
- AA3.3.4Error Prevention (Legal, Financial, Data)
- AAA3.3.5Help
- AAA3.3.6Error Prevention (All)
- A3.3.7Redundant Entry
- AA3.3.8Accessible Authentication (Minimum)
- AAA3.3.9Accessible Authentication (Enhanced)
Robust
- A4.1.2Name, Role, Value
- AA4.1.3Status Messages