All WCAG 2 Test Rules
Test Rules
These Test Rules have been approved by the Accessibility Guidelines Working Group. They are fully implemented in at least one evaluation tool or methodology.
- autocomplete attribute has valid value
- Button has non-empty accessible name
- Element with lang attribute has valid language tag
- Element marked as decorative is not exposed
- Form field has non-empty accessible name
- HTML page has lang attribute
- HTML page lang attribute has valid language tag
- HTML page lang and xml:lang attributes have matching values
- HTML page has non-empty title
- Image button has non-empty accessible name
- Image has non-empty accessible name
- Letter spacing in style attributes is not !important
- Link has non-empty accessible name
- Word spacing in style attributes is not !important
Proposed Test Rules
Proposed test rules will be published when they have at least one implementation and are approved by the AGWG.
- aria-* attribute is defined in WAI-ARIA
- Element with aria-hidden has no focusable content
- ARIA required context role
- ARIA required owned elements
- ARIA state or property is permitted
- ARIA state or property has valid value
- Attribute is not duplicated
- audio element content is media alternative for text
- audio or video avoids automatically playing audio
- audio element content has text alternative
- audio element content has transcript
- Audio or video that plays automatically has no audio that lasts more than 3 seconds
- audio or video that plays automatically has a control mechanism
- Text content that changes automatically can be paused, stopped or hidden
- Block of repeated content is collapsible
- Bypass Blocks of Repeated Content
- Orientation of the page is not restricted using CSS transform property
- Device motion based changes to the content can be disabled
- Device motion based changes to the content can also be created from the user interface
- Document has heading for non-repeated content
- Document has an instrument to move focus to non-repeated content
- Document has a landmark with non-repeated content
- HTML element language subtag matches language
- svg element with explicit role has non-empty accessible name
- Focusable element has no keyboard trap
- Focusable element has no keyboard trap via non-standard navigation
- Focusable element has no keyboard trap via standard navigation
- Form field label is descriptive
- Heading is descriptive
- Heading has non-empty accessible name
- HTML page language subtag matches default language
- HTML page title is descriptive
- id attribute value is unique
- iframe elements with identical accessible names have equivalent purpose
- iframe element has non-empty accessible name
- iframe with negative tabindex has no interactive elements
- Image accessible name is descriptive
- DEPRECATED — Image filename is accessible name for image
- HTML graphics contain no text
- Image not in the accessibility tree is decorative
- Error message describes invalid form field value
- Line height in style attributes is not !important
- Link is descriptive
- Link in context is descriptive
- Links with identical accessible names have equivalent purpose
- Links with identical accessible names and context serve equivalent purpose
- Menuitem has non-empty accessible name
- meta element has no refresh delay
- meta element has no refresh delay (no exception)
- meta viewport allows for zoom
- Content has alternative for visual reference
- Object element rendering non-text content has non-empty accessible name
- Element with presentational children has no focusable content
- No keyboard shortcut uses only printable characters
- role attribute has valid value
- Element with role attribute has required states and properties
- Scrollable element is keyboard accessible
- Element in sequential focus order has visible focus
- Table header cell has assigned cells
- headers attribute specified on a cell refers to cells in the same table element
- Text has minimum contrast
- Text has enhanced contrast
- video element auditory content has accessible alternative
- video element visual content has accessible alternative
- video element content is media alternative for text
- video element visual content has audio description
- video element auditory content has captions
- video element visual content has description track
- video element visual-only content has accessible alternative
- video element visual-only content is media alternative for text
- video element visual-only content has audio track alternative
- video element visual-only content has description track
- video element visual-only content has transcript
- video element visual content has strict accessible alternative
- Audio and visuals of video element have transcript
- Visible label is part of accessible name
- Zoomed text node is not clipped with CSS overflow