- Success Criterion 4.1.2
- Conformance level A
State Attribute Present on an Element That Never Actually Changes
4.1.2 — Name, Role, Value
Scenario
Setting
A real-estate marketplace's listing page
What’s wrong
State attributes on elements that never change state (aria-expanded (the open/closed state in code) on a plain link) announcing false expandability.
Example
<a href="/listings/4471/description" aria-expanded="false">View full description</a>
<!-- a normal navigation link, copied from an accordion template, so it announces false
expand and collapse behavior it never performs --> Why it matters
A screen reader user hears "collapsed, link" and expects Enter to expand content in place, but gets a whole new page instead.
How to test
Inspect a control's aria state attributes: if a state attribute exists on an element that has no actual state to report (e.g., aria-expanded on a plain link), it fails.
How to fix
Remove aria-expanded, and any other state attribute, from elements that don't actually toggle a state.
<a href="/listings/4471/description">View full description</a> Outcome
A house hunter follows the link to the full description with no confusing state announcement.
Who is affected
Screen reader users browsing listings get a false expectation of in-page expansion from a link that only navigates.
Learn more
- Understanding Understanding document (opens in a new tab)
Related scenarios
- Custom Dropdown or Slider With No Accessibility API Support
- Content Changes That Never Update Their Accessible Name
- Scripted Link or Button With No Real Role or Keyboard Support
- Clickable Div Turned Into a Control but Given No ARIA Role
- Form Field With No Programmatic Label at All
- Assistive Technology Never Told Which Element Currently Has Focus