Label in Name
For controls with visible text labels, the accessible name includes that visible text — they must not diverge.
Why it matters
Speech-input users say the visible label out loud to activate a control ('click Submit Order'). If the accessible name is actually 'Confirm' via an aria-label while the visible text says 'Submit Order', the voice command matches nothing.
Automatically detected
axe-core can compare visible text content against the computed accessible name and flag a mismatch.
Related axe-core rules: label-content-name-mismatch
Fails
<button aria-label="Confirm">Submit Order</button>The accessible name is 'Confirm' but the visible text is 'Submit Order' — a speech-input user saying the visible label finds nothing to click.
Passes
<button>Submit Order</button>No aria-label override — the accessible name matches the visible text exactly, so voice commands work.
Openwell finds violations like this one across your whole site, clusters them by the component that caused them, and generates a fix that's re-validated before you see it.
Scan your site free