Accessibility
Website accessibility is about designing and developing your website to make it usable and accessible for users with disabilities. More specifically, accessibility allows disabled users to perceive, understand, navigate, and interact with your website.
Improving your site's accessibility also has a number of user benefits for those who are not disabled, such as users on smaller screens, older users, and people with 'situational limitations' such as in bright sunlight or in an environment where they cannot listen to audio
Automated accessibility testing
Sitebulb's accessibility audit utilizes the open source aXe library developed by Deque, running 50+ automated accessibility checks against the content and code of every page of your website.
This is the same technology that powers the accessibility audit in Google's Lighthouse tool, so you can perform a spot-check on a single URL or debug further in the browser using Lighthouse.
Sitebulb's Hint system will show you every violation found on each page, and each violation is wired up to the Deque University aXe Rules via a Learn More link, which explain what the rule means, what it is looking for, and how to fix it.
Accessibility Hints
The accessibility ruleset spans a number of different aspects, as follows:
Colour contrast
ARIA roles
- ARIA attributes must conform to valid names
- ARIA attributes must conform to valid values
- ARIA roles used must conform to valid values
- aria-hidden="true" must not be present on the document body
- Certain ARIA roles must be contained by particular parents
- Certain ARIA roles must contain particular children
- Required ARIA attributes must be provided
- Elements must only use allowed ARIA attributes
Forms
Frames
Alt text
- Images must have alternate text
- <object> elements must have alternate text
- Active <area> elements must have alternate text
- Button or link text should not be repeated in the image alternative
- Image buttons must have alternate text
Headings
- Headings must not be empty
- Ensure p elements are not used to style headings
- Heading levels should only increase by one
Discernible text
Landmarks
- Page must contain one main landmark
- Main landmark is not at top level
- Content should be contained in a landmark region
- Page must have means to bypass repeated blocks
Definition lists
Language
- <html> element must have a valid value for the lang attribute
- <html> element must have a lang attribute
- lang attribute must have a valid value
Video and audio
- <video> elements must have an audio description track
- <video> elements must have captions
- <audio> elements must have a captions track
Lists
Grouped inputs
- Checkbox inputs with the same name attribute value must be part of a group
- Radio inputs with the same name attribute value must be part of a group
Tables
- Layout tables must not use data table elements
- Table <caption> contain the same text as the summary attribute
- Table headers in a data table must refer to data cells
- Data or header cells should not be used to give caption to a data table
- Ensure that each non-empty data cell in a large table has one or more table headers
- Ensure that each table header in a data table refers to data cells
- scope attribute should be used correctly
Zooming and scaling
Navigation
- Elements should not have tabindex greater than zero
- The page should have a skip link as its first link
- Documents must have <title> element to aid in navigation
- accesskey attribute value must be unique
- id attribute value must be unique