SkillByAIOpen interactive version →

Lesson 8 / 26

Screen readers

Learn how screen readers use the accessibility tree and how to fix labels, link text and announcements.

How screen readers work

Popular: NVDA (Windows, free), JAWS (Windows, commercial), VoiceOver (macOS/iOS), TalkBack (Android). They read the accessibility tree—an abstract representation of the page semantics. Proper HTML, labels, alt text, and ARIA enable this tree.

Common screen reader problems

Avoid these common problems: missing labels, vague link text ("Click here"), meaningful images without alt, unlabelled form fields, no page title, no heading hierarchy, inaccessible carousels and infinite scroll.

Using aria-label & aria-describedby

Provide visible or hidden context for screen reader users.

<!-- aria-label for icon-only button -->
<button aria-label="Close menu">✕</button>

<!-- aria-describedby for additional info -->
<input 
  id="password" 
  type="password" 
  aria-describedby="pwd-hint"
/>
<p id="pwd-hint">Min 8 chars with upper, lower, number</p>

<!-- aria-label for image -->
<img src="logo.svg" aria-label="Company logo" />

Live regions for updates

Use aria-live="polite" for notifications, aria-live="assertive" for urgent alerts. Content added to live regions is automatically announced.

Testing with NVDA

Use Forms mode (Tab through forms), Browse mode (navigate with arrow keys), and Focus mode (interact with controls). Spend time with real screen readers.