ARIA & keyboard
Custom control is missing a required state
WCAG 2.2 success criterion 4.1.2 Name, Role, Value (Level A)
- WCAG 2.2
- 4.1.2 Name, Role, Value
- Level
- A
- Default severity
- Error
- Available in
- Free
Updated for Lumtera 1.3.0 and Lumtera Pro 1.2.0.
Why does it matter?
WCAG 4.1.2 asks that assistive technology can read a control's state; WAI-ARIA requires this state for this role, and without it people cannot tell, for example, whether a custom checkbox is ticked. A script may add it when the page runs, so check the live page before changing anything.
Who it affects: Screen reader and keyboard users, who depend on ARIA and focus order being correct to understand and operate the page.
What does Lumtera flag?
A role that WAI-ARIA says must carry a state, such as role="checkbox" with no aria-checked. On raw content this is Needs review, because a script may add the state later; on the running page's snapshot in review mode it is an error.
Check ID aria-required-attr — use it to filter the content report or with wp lumtera issues --rule.
How do I fix it in WordPress?
Add the missing attribute and keep it up to date from the script that runs the control, for example aria-checked="false" that becomes "true" when ticked. Better still, use a native control (a checkbox input or a button), which keeps its own state.
Example
<div role="checkbox" tabindex="0">Subscribe</div>
<input type="checkbox" id="news"> <label for="news">Subscribe</label>
How do I check the fix?
- Update the post. The issue disappears from the Lumtera Accessibility sidebar on the next check, and from the site report on the next scan.
- Press Tab from the top of the page. Focus should move in reading order and never land on something invisible or silent.
Find this issue across your whole site
Lumtera runs this check in the block editor sidebar as you write, in the Elementor panel, in Review mode on the live page, and across the whole site in the content report and with wp lumtera scan. You can change its severity or turn it off in Lumtera → Settings.
Related checks
-
WCAG 2.4.4 · AError
Link has no text
-
WCAG 4.1.2 · ANeeds review
Link does not go anywhere
-
WCAG 4.1.2 · AError
Button has no text
-
WCAG 4.1.2 · AError
Form field has no label
-
WCAG 4.1.2 · AError
Embedded frame has no title
-
WCAG 4.1.2 · ANeeds review
Embedded frames share the same title
Start with the free plugin today
All 88 content checks and 38 whole-page checks, fixes you approve with undo, and the site report — free, with no account and no page limits.