Accessibility (A11y) Interview Preparation
10+ questions covering WCAG, keyboard navigation, screen readers, and accessibility testing
Master web accessibility from fundamentals to advanced patterns. Essential for inclusive web development.
Topicsβ
| File | Topics | Difficulty |
|---|---|---|
| WCAG Fundamentals | WCAG guidelines, POUR principles, conformance levels | π‘ |
| Keyboard Navigation | Focus management, keyboard shortcuts, tab order | π‘ |
| Screen Readers Basics | ARIA, semantic HTML, screen reader testing | π‘ π΄ |
| Testing Tools | Automated testing, manual testing, accessibility audits | π‘ |
| ARIA Roles | Landmark roles, widget roles, when to use ARIA | π‘ |
| ARIA Properties | aria-label, aria-labelledby, aria-describedby | π‘ |
| ARIA States | aria-expanded, aria-hidden, aria-disabled, dynamic updates | π‘ |
| Accessible Names | Accessible name computation, priority order | π΄ |
| Alt Text for Images | Decorative vs informative images, complex scenarios | π’ |
| Color Contrast | WCAG AA/AAA ratios, contrast calculation, testing | π‘ |
| Focus Management | Focus traps, skip links, focus restoration | π‘ |
| Focus Visible | :focus-visible, custom focus indicators | π’ |
| Form Accessibility | Labels, fieldsets, error handling, custom controls | π‘ |
| Landmark Regions | HTML5 landmarks, semantic structure | π’ |
| ARIA Live Regions | aria-live, polite vs assertive, dynamic content | π‘ |
| Modal Accessibility | Focus traps, aria-modal, keyboard interaction | π΄ |
| Reduced Motion | prefers-reduced-motion, vestibular disorders | π’ |
Most Frequently Askedβ
- WCAG Levels - A, AA, AAA conformance (βββββ)
- ARIA Attributes - When and how to use (βββββ)
- Keyboard Navigation - Focus management (ββββ)
- Screen Reader Testing - NVDA, JAWS, VoiceOver (ββββ)
- Semantic HTML - Importance for accessibility (ββββ)
Key Conceptsβ
POUR Principlesβ
P - Perceivable
- Text alternatives for images
- Captions for videos
- Adaptable content
O - Operable
- Keyboard accessible
- Enough time to interact
- No seizure-inducing content
U - Understandable
- Readable text
- Predictable navigation
- Input assistance
R - Robust
- Compatible with assistive tech
- Valid HTML
- Progressive enhancement
WCAG Conformance Levelsβ
- Level A β Minimum accessibility (basic)
- Level AA β Target for most sites (recommended, legal requirement in many countries)
- Level AAA β Enhanced accessibility (ideal for healthcare, government)
Common ARIA Rolesβ
role="button"β Interactive buttonrole="navigation"β Navigation landmarkrole="dialog"β Modal dialogrole="alert"β Important messagerole="tablist"β Tab interface
Do's and Don'tsβ
DO's β β
- Use semantic HTML first
- Provide text alternatives for images
- Ensure keyboard navigation works
- Manage focus properly
- Test with screen readers
- Use sufficient color contrast (4.5:1 minimum)
- Label all form inputs
- Provide skip links
- Use ARIA when HTML isn't enough
DON'Ts ββ
- Use divs for interactive elements
- Rely only on color to convey information
- Skip keyboard testing
- Remove focus outlines without replacement
- Overuse ARIA
- Ignore form labels
- Forget alt text
- Disable zoom
Toolsβ
Testingβ
- axe DevTools β Browser extension for accessibility testing
- WAVE β Web accessibility evaluation tool
- Lighthouse β Accessibility audits in Chrome
- Pa11y β Automated CLI accessibility testing
Screen Readersβ
- NVDA β Free Windows screen reader
- JAWS β Popular Windows screen reader
- VoiceOver β macOS/iOS screen reader
- TalkBack β Android screen reader
Testing Librariesβ
- jest-axe β Jest matcher for accessibility testing
- @testing-library/react β Encourages accessible queries
- cypress-axe β Cypress accessibility testing
Resourcesβ
- WCAG 2.1 Guidelines
- MDN - Accessibility
- WAI-ARIA Authoring Practices
- WebAIM
- A11y Project
- Inclusive Components
Content from Frontend-Master-Prep-Series β 08-accessibility