HTML5 Accessibility

Making web content accessible to all users

ARIA Attributes

aria-label="Description" # accessible name
aria-labelledby="id" # reference to label
aria-describedby="id" # reference to description
aria-hidden="true" # hide from screen readers

ARIA Roles

role="navigation" # navigation landmark
role="main" # main content
role="banner" # site header
role="contentinfo" # site footer
role="button" # button role

Alt Text

<img src="photo.jpg" alt="Person smiling"> # descriptive alt
<img src="icon.png" alt=""> # decorative image

Form Accessibility

<label for="name">Name</label> # associate label
<input id="name" type="text">
<input aria-required="true"> # required field

Keyboard Navigation

tabindex="0" # include in tab order
tabindex="-1" # exclude from tab order
accesskey="s" # keyboard shortcut