Required attribute on input announced by screen reader as invalid entry prior to user entry
Categories
(Core :: Disability Access APIs, defect)
Tracking
()
People
(Reporter: joewatkinspdx, Unassigned)
Details
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36
Steps to reproduce:
- With Firefox and a screen reader of your choice visit https://cdpn.io/pen/debug/NWXmXxE
- Send focus to the first test field which owns the required attribute.
- Then send focus to the second field which owns aria-required="true".
Actual results:
JAWS/FF: Test edit required invalid entry type in text
JAWS/FF: Test two edit required type in text
NVDA/FF: Test edit required invalid entry has autocomplete blank
NVDA/FF: Test two edit required has autocomplete blank
The first test field which owns the required attribute is announced as "invalid entry" even though no entry has been made. This is confusing and frustrating for screen reader users since they've not entered text yet for it to be invalid. Validity state is defined along with its requiredness.
The second field which owns the aria-required is announced much better, it only announces the requiredness. It does not announce "invalid entry". The ARIA spec requires a separate attribute aria-required to define the required property and should not be set until after user interaction.
Expected results:
A field which owns the native HTML required attribute is only announced as required and not as "invalid entry". This would be an equal experience for all users. Most forms do not trigger error messages on landing and await user interaction. Enabling engineers to reach for the most semantic method for defining the required property without introducing a less than equal experience for screen readers is the goal.
This is resulting in engineers using aria-required over the native required attribute as a result.
Related issue:
https://bugzilla.mozilla.org/show_bug.cgi?id=666544
ARIA: mismatch between native and custom required contro
https://github.com/w3c/aria/issues/1488
HTML: Required attribute invalid state on landing not an equal experience for all user
https://github.com/whatwg/html/issues/7848
Chrome Issue:
https://bugs.chromium.org/p/chromium/issues/detail?id=1318969#c_ts1650658597
Comment 1•3 years ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Disability Access APIs' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Updated•3 years ago
|
Comment 2•2 years ago
|
||
Is there any update on this bug?
Description
•