Skip to main content

Accessibility Rules Covered

This article contains information about the rules and tags recognized by WAX Dev Testing Framework

Rules

WAX Dev checks source against the following rules:

Rule IdentifierRule Description
area-altActive area elements must have alternate text
aria-allowed-attrElements must only use allowed ARIA attributes
aria-command-nameARIA commands must have an accessible name
aria-hidden-bodyaria-hidden='true' must not be present on the document body
aria-hidden-focusARIA hidden element must not be focusable or contain focusable elements
aria-input-field-nameARIA input fields must have an accessible name
aria-meter-nameARIA meter nodes must have an accessible name
aria-progressbar-nameARIA progressbar nodes must have an accessible name
aria-required-attrRequired ARIA attributes must be provided
aria-required-childrenCertain ARIA roles must contain particular children
aria-required-parentCertain ARIA roles must be contained by particular parents
aria-roledescriptionaria-roledescription must be on elements with a semantic role
aria-rolesARIA roles used must conform to valid values
aria-toggle-field-nameARIA toggle fields must have an accessible name
aria-tooltip-nameARIA tooltip nodes must have an accessible name
aria-valid-attrARIA attributes must conform to valid names
aria-valid-attr-valueARIA attributes must conform to valid values
audio-captionaudio elements must have a captions track
blinkblink elements are deprecated and must not be used
button-nameButtons must have discernible text
bypassPage must have means to bypass repeated blocks
color-contrastElements must have sufficient color contrast
definition-listdl elements must only directly contain properly-ordered dt and dd groups, script, template or div elements
dlitemdt and dd elements must be contained by a dl
document-titleDocuments must have title element to aid in navigation
form-field-multiple-labelsForm field must not have multiple label elements
frame-focusable-contentFrames with focusable content must not have tabindex=-1
frame-titleFrames must have an accessible name
frame-title-uniqueFrames must have a unique title attribute
html-has-langhtml element must have a lang attribute
html-lang-validhtml element must have a valid value for the lang attribute
html-xml-lang-mismatchHTML elements with lang and xml:lang must have the same base language
image-altImages must have alternate text
input-button-nameInput buttons must have discernible text
input-image-altImage buttons must have alternate text
labelForm elements must have labels
link-in-text-blockLinks must be distinguishable without relying on color
link-nameLinks must have discernible text
listul and ol must only directly contain li, script or template elements
listitemli elements must be contained in a ul or ol
marqueemarquee elements are deprecated and must not be used
meta-refreshDelayed refresh under 20 hours must not be used
meta-viewportZooming and scaling must not be disabled
nested-interactiveInteractive controls must not be nested
no-autoplay-audiovideo or audio elements must not play automatically
object-altobject elements must have alternate text
p-as-headingStyled p elements must not be used as headings
role-img-alt[role='img'] elements must have an alternative text
scrollable-region-focusableScrollable region must have keyboard access
select-nameSelect element must have an accessible name
server-side-image-mapServer-side image maps must not be used
svg-img-altsvg elements with an img role must have an alternative text
table-fake-captionData or header cells must not be used to give caption to a data table.
td-has-headerNon-empty td elements in larger table must have an associated table header
td-headers-attrTable cells that use the headers attribute must only refer to cells in the same table
th-has-data-cellsTable headers in a data table must refer to data cells
valid-langlang attribute must have a valid value
video-captionvideo elements must have captions