You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi there! Thanks for getting back to me so quickly. Yes, the aria-labelledby on the input in my example looks good. But it’s also expected that the label will have a “for” property that points to the id of the input it labels since the input is not a child element of the label.
From https://www.w3.org/TR/html401/interact/forms.html#h-17.9.1
"This attribute explicitly associates the label being defined with another control. When present, the value of this attribute must be the same as the value of the id attribute of some other control in the same document. When absent, the label being defined is associated with the element's contents."
And if you run the WAVE (web accessibility evaluation) tool on the example page submitted in the issue, you’ll see an “orphaned form label” alert.
On Apr 25, 2024, at 12:13 PM, Adam Wathan ***@***.***> wrote:
Hey! The label is associated with the input using aria-labelledby to make sure the label is properly announced to screen readers:
image.png (view on web)
Is there a specific issue you are seeing that we'd need to add htmlFor to solve?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: ***@***.***>
What package within Headless UI are you using?
@headlessui/react
What version of that package are you using?
v1.7.19
What browser are you using?
Chrome/Firefox
Reproduction URL
https://codesandbox.io/p/devbox/elastic-julien-97m3nj?file=%2Fsrc%2FApp.jsx%3A31%2C56
Describe your issue
When providing a custom label for a combobox, the rendered custom label is missing the htmlFor property which is needed for accessibility.
See examples at https://www.w3.org/WAI/GL/wiki/Using_aria-labelledby_to_concatenate_a_label_from_several_text_nodes
The text was updated successfully, but these errors were encountered: