--- name: accessibility description: | Build WCAG 2.1 AA compliant websites with semantic HTML, proper ARIA, focus management, and screen reader support. Includes color contrast (4.5:1 text), keyboard navigation, form labels, and live regions. Use when implementing accessible interfaces, fixing screen reader issues, keyboard navigation, or troubleshooting "focus outline missing", "aria-label required", "insufficient contrast". --- # Web Accessibility (WCAG 2.1 AA) **Status**: Production Ready ✅ **Last Updated**: 2026-01-14 **Dependencies**: None (framework-agnostic) **Standards**: WCAG 2.1 Level AA --- ## Quick Start (5 Minutes) ### 1. Semantic HTML Foundation Choose the right element - don't use `div` for everything: ```html
Submit
Next page
Next page ``` **Why this matters:** - Semantic elements have built-in keyboard support - Screen readers announce role automatically - Browser provides default accessible behaviors ### 2. Focus Management Make interactive elements keyboard-accessible: ```css /* ❌ WRONG - removes focus outline */ button:focus { outline: none; } /* ✅ CORRECT - custom accessible outline */ button:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; } ``` **CRITICAL:** - Never remove focus outlines without replacement - Use `:focus-visible` to show only on keyboard focus - Ensure 3:1 contrast ratio for focus indicators ### 3. Text Alternatives Every non-text element needs a text alternative: ```html Company Name ``` --- ## The 5-Step Accessibility Process ### Step 1: Choose Semantic HTML **Decision tree for element selection:** ``` Need clickable element? ├─ Navigates to another page? → ├─ Submits form? →