Accessibility Guide

Search the Guide

How to use

Each article can be filtered by role (content creator or developer), or by a range of topics (links, headings, navigation, etc.). You can also adjust how many items are shown per page, and navigate by the pager.

Definition of roles

Content creator: Website editor, instructor working in canvas

Developer: Web admin or developer, mainly working on web themes or complex applications

Note about roles

Roles are determined by the person most likely responsible for an area of web design and development. Guidelines can overlap, and depending on a project or site, the responsibilities may fluctuate.

Search results

56 results

Images of text have numerous accessibility concerns. Users with low vision may need to increase the font size, which doesn't work well with images and cause text to look pixelated. Some users may customize the display of web content to make it accessible, and images of text can't be customized to their preference.

Applicable Roles

Content Creator Developer

Users that rely on keyboard navigation will expect a meaningful sequence when focusing on interactive elements. Links, buttons, inputs, and other controls have tab indexes built in. Adding positive tabindexes, if not managed correctly, can make the user jump all over the page and create a confusing experience.

Applicable Roles

Developer

Keyboard shortcuts can help make navigating or doing things on a page easier. If the shortcut uses only characters for typing though (letters, punctuation, symbols, etc.), this could lead to accidentally triggering actions the user doesn't intend to.

This can be especially frustrating for keyboard users, people using alternative pointing devices like head pointers, or people using speech input (i.e. saying a string of letters).

Applicable Roles

Developer

New in WCAG 2.2

Remembering a username and password, or identifying patterns in a CAPTCHA, can increase the cognitive effort needed to authenticate. This may especially affect people who have challenges with memory, reading, numbers, or other types of info processing. Having different ways of authenticating can help people verify their account or identity in ways that work for them.

Applicable Roles

Designer Developer

There are many ways to operate a desktop or mobile device. Some assistive technology like alternative pointer devices, keyboard-only navigation, speech input, or switch devices can use websites better when interactive features are activated with a single click event. Path-based gestures like swiping, or a multi-point gesture like multiple fingers, can be more challenging with these input methods.

Users also need the ability to cancel any single point action, like single or double clicks and taps, long-presses or path-based gestures. If someone changes their mind about a particular action or accidentally clicks in the boundary, the action could go through immediately as they press down on the control, with no ability to revert a mistake.

Applicable Roles

Designer Developer

WCAG 2.1 and WCAG 2.2

Web Content Accessibility Guidelines (WCAG) 2.2 is the most recent baseline W3C Recommendation for developing accessible web content. WCAG is based on four principles:

  1. Perceivable: users must be able to detect the content using a variety of senses.
  2. Operable: users must be able to navigate and use all functionality in web content.
  3. Understandable: users need web content that is readable and predictable.
  4. Robust: users can still access content, even if technologies update or change.

As of today, Washington state policy requires WCAG 2.1 as the accessibility standard. However, we recommend meeting WCAG 2.2, as 2.2 is backward compatible and satisfies 2.1 criteria, in addition to new criteria added in 2023.

ARIA 1.2

Accessible Rich Internet Applications (ARIA) provides a range of information to users about complex widgets and states of other interfaces.

Note: semantic HTML should be used instead of ARIA whenever possible.

There are resources for learning more about using ARIA when needed: