Bug 254081
Summary: | AX: iOS Voiceover not announcing text linked to input using aria-describedby | ||
---|---|---|---|
Product: | WebKit | Reporter: | Graham Armfield <graham.armfield> |
Component: | Accessibility | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Major | CC: | andresg_22, marc.solomon, maria, webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | Safari 16 | ||
Hardware: | iPhone / iPad | ||
OS: | iOS 16 |
Graham Armfield
A common way of programmatically linking hint text or error messages to input fields is by using aria-describedby attribute on the input element.
What is currently happening:
When a Voiceover user is swiping right to move through the input fields this linked text is not being read out when focus is on the input field. The text is read out if user swipes beyond the input but they won't necessarily know it's there, or that it's linked to the input field.
What should happen:
The linked hint text or error message should be read out when Voiceover moves focus onto an input field. Suggest that it is voiced after the label and the type of input field, and "invalid data" if aria-invalid="true" is present.
Example code:
<label for="firstname">First name</label>
<input type="text" id="firstname" name="firstname" aria-required="true" aria-invalid="true" aria-describedby="firstname-error">
<span id="firstname-error">You must supply your first name.</span>
The above code gives a satisfactory experience in desktop/laptop screen readers like NVDA and JAWS.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/106866541>
marc.solomon
For what it's worth, I cannot reproduce this issue using the provided code sample with Safari on iOS 17.5.1.