Welcome to Learn Accessibility!

Digital accessibility, commonly abbreviated a11y, is about designing and building websites and web apps that disabled people can interact with in a meaningful and equivalent way.

This course is created for beginner and advanced web developers. You can go through the series from start to finish to get a general understanding of accessibility practices and testing, or you can use it as a reference for specific subjects. If you read an unfamiliar term, refer to our glossary. For those new to web development overall, check out the Learn HTML courses for fundamentals with markup and Learn CSS courses for styling fundamentals.

This is not a complete reference. Each section introduces the section topic, provides context and examples. There will be links to topic references, such as MDN and WCAG specifications, and other web.dev articles. Each section will have a short assessment to help people confirm their understanding.

Some accessibility best practices differ, based on the disability you're addressing. It's important to understand your users and to listen to people with disabilities when they tell you what they need.

We are open to your feedback! Open a GitHub issue and give as much information as you can so we can address it.

Here's what you'll learn:

What is digital accessibility, and why does it matter?

Design and build websites and web apps that disabled people can interact with in a meaningful and equivalent way. Read about the business and legal impact of these choices.

ARIA and HTML

When to use ARIA versus HTML.

Content structure

Use semantic HTML, landmarks, and tables for accessible content.

The Document

Additional HTML elements to consider when building accessible websites and web apps.

Keyboard focus

Understand and enhance keyboard navigation order and style.

JavaScript

Write accessible trigger events, page titles, dynamic content, and more.

Images

Create accessible images.

Color and contrast

Build accessible color palettes with appropriate contrast.

Animation and motion

Support people with all types of movement-triggered disorders.

Typography

Pick the right typefaces, font sizes, and structure your copy with an accessible layout.

Video and audio

Alternative media types which make your video and audio accessible.

Forms

Create accessible forms.

Design and user experience

Create accessible designs and evaluate your user's experience.

Automated accessibility testing

How to perform automated accessibility testing.

Manual accessibility testing

How to manually test for accessibility.

Assistive Technology testing

How to test with Assistive Technology (AT).

Conclusion and next steps

Further resources to help you take your next steps.

Glossary

Learn common accessibility terms and concepts.

So, are you ready to learn accessibility? Let's get started.