Accessibility Checker upgraded to Axe Core 4.0.2

by Jaime Iniesta

We've just upgraded our A11Y validation servers to the latest version of axe-core, 4.0.2, which includes new rules and improvements, so you may want to re-check your sites to get the most up-to-date results.

Axe Core 4.0.2

Bug Fixes

  • color-contrast: dont error for floating element
  • i18n: proofreading of the french translations
  • implicit-role: return gridcell for td child of grid or treegrid
  • label: pass when role none or presentation
  • link-name: fix regression where link was not named from title attributefix po
  • required-parent: fail if intermediate role is not the required parent
  • svg-non-empty-title: update fail message to indicate if the title element is empty or missing
  • valid-lang: fail when lang attribute contains only whitespace

Axe Core 4.0.1

Bug Fixes

  • checks: do not normalize options for custom checks

Axe Core 4.0.0

Breaking Changes

The following rules were deprecated in axe-core 3.x, and are removed in 4.0:

  • aria-dpub-role-fallback
  • checkboxgroup
  • layout-table
  • radiogroup
  • video-description

The following checks were deprecated in axe-core 3.x, and are removed in 4.0:

  • aria/implicit-role-fallback
  • forms/fieldset
  • forms/group-labelledby
  • media/description
  • tables/has-caption
  • tables/has-summary
  • tables/has-th


  • add layout-table-matches method
  • aria/get-roles-by-type: deprecate in favor of standards/get-aria-roles-by-type
  • aria/lookupTable, aria-allowed-attr: deprecate aria.lookupTable and passing allowed attributes to aria-allowed-attr
  • avoid-inline-spacing: add option for which css properties to look at
  • checks: normalize check options to alway be an object
  • checks,rules: remove deprecated checks and rules
  • closest: VirtualNode implementation of Element.closest. Deprecate commons.dom.findUp and commons.dom.findUpVirtual
  • color-contrast, utils: add more options to color-contrast, add utils.deepMerge, deprecate commons.color.hasValidContrastRatio
  • commons/aria: deprecate getRole
  • commons/standards: create the commons/standards object for helper functions against the standards table
  • duplicate-img-label: add option for parentSelector
  • get-role: add presentation role resolution and inheritance
  • get-role: work with standards object
  • globals: deduce required window and document globals from context
  • has-descendant, page-no-duplicate: move page-has-elm and page-no-duplicate to generic check
  • has-lang: add option for which attributes to look at
  • has-text-content: add generic check has-text-content
  • i18n: add Basque
  • matcher: allow regex string to be parsed as regex
  • matches: add explicitRole, implicitRole, and semanticRole matches functions
  • matches-definition: add generic check matches-definition
  • metadata-function-map: add metadata function map to support check evaulate functions as an id string
  • non-space-content: switch all non-empty checks to new generic check
  • object-alt,accessible-text: object-alt rule and accessible text to work with serial virtual nodes with children
  • options: add ancestry CSS selector to nodes
  • region: add option to match nodes as region
  • required-attrs: deprecate options to pass more required attrs
  • rule: add reviewOnFail option to have rule return as needs review instead of violation
  • rule: optional impact on rules
  • scope-value: add options for valid scope values
  • standards: add ariaRoles standard
  • standards: add dpub-roles spec
  • standards: add get-aria-roles-supporting-name-from-content and deprecate aria/get-roles-with-name-from-content
  • standards: add get-elements-by-content-type and implicit-html-roles
  • add “ACT” tag for published W3C ACT rules
  • standards: add html-elms spec
  • standards: create standards object and ariaAttrs
  • utils.getFlattenTree: default to documentElement
  • valid-lang: add option for which attributes to look at
  • update SC tags for label rule

Bug Fixes

  • accessible-name-virtual: allow subtree text to work with virtual and serial nodes
  • api: correct use of rules property in
  • aria-allowed-attr: Add aria-orientation to radiogroup role
  • aria-allowed-attr: allow aria-activedescendant on role=application
  • aria-allowed-role: Add fieldset to allowed elements for radiogroup
  • aria-allowed-role: allow role=presentation on hr
  • aria-lablledby: work with virtual and serial virtual nodes
  • aria-toggle-field-name: work with virtual nodes
  • aria/allowed-attr: work with standards object
  • aria/get-role-type: work with standards object
  • autocomplete: allow all ‘tel-*’ autocomplete values on type=tel
  • button-name: work with serial virtual node
  • bypass: find headings in iframes
  • color: allow all valid CSS colors
  • color-contrast: account for text-shadow
  • color-contrast: ignore aria-disabled labels
  • color-contrast: properly handle truncated text
  • dlitem: allow role=presentation on parent dl
  • focusable-no-name: work with serial virtual nodes
  • forms/*: allow all form control value checks to work with virtual nodes
  • header-present: fail for headings with non-header role
  • html-namespace-matches: work with serial virtual nodes
  • implicit-roles: add proper implicit role calculation
  • input-button-name: work with virtual nodes
  • is-valid-autocomplete: allow autocomplete=”one-time-code”
  • label: work with virtual nodes
  • page-has-h1: allow aria-level=1 on native headings
  • rule: allow impact to be configured
  • rule,check: allow function ids for matches property in rule.configure
  • run: cleanup globals if set from context
  • svg-image-alt: work with serial virtual nodes
  • types: Allow impact to be null
  • types: Make any tag allowed
  • typings: update types file
  • virtual-node: default and lowercase type property
  • ensure correctly generated axe is required by aria-supported build step
  • aria-required-attr: pass aria-checked for elements with checked property
  • axe.d.ts: add element to NodeResults
  • color-contrast: mark more punctutions for review
  • duplicate-id: list the duplicate id in message
  • required-children: consider overriding descendant role
  • scrollable-region-focusable: pass for elements with contenteditable
  • th-has-data-cells: fail when only cell points to different header
  • types: Add “wcag21aa” and “wcag21a” to our TS definition
  • types: Add missing properties to Spec

Current accessibility ruleset

Check out the full list of accessibility rules that are being checked currently by our web crawler

Accessibility rules checked by Rocket Validator

Ready to check your sites?
Start your trial today.