-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ARIA required owned elements (bc4a75): Elements should be allowed children _not_ required by their role #1426
Comments
That makes sense. Do you want to put together the pull request? |
Sure 👍 |
@kasperisager Thinking about this some more... changing this means empty containers would no longer be allowed. I suspect that is going to create issues on the other side. Maybe we should make this conditional, have it only be applicable to elements with palpable content? |
That's true 🤔 It would require empty containers to specify |
To take the opposing view as well, requiring
So, until a user has added some todos to the list, AT should hold off on announcing it. Then, perhaps when the user removes focus from the text input, the added todos can be announced as a single, atomic update. |
Not too sure about that. |
I'm also not entirely convinced that it'd be appropriate. I'd really like for the ARIA WG to clarify this though, because I'm beginning to doubt if the concept of "required owned elements" even makes sense. If the logic ends up becoming "if the element owns at least one other element then at least one of the owned elements is of a required role" then I'm not sure if the rule is really providing any value 🤔 |
I pinged James on Slack this morning about it, to try to get a reaction on my open issue in the ARIA repo. |
The need for this came up again in #1552. Is there any news from the ARIA WG? |
This isn't getting addressed until ARIA 1.3. The ARIA spec needs to clarify the intent of required owned elements, before we can do much with it in ACT. |
The rule currently states, emphasis mine:
At Siteimprove, we've however seen quite a few cases of patterns like the following:
In Alfa, the above results in the following accessibility tree:
This aligns well with the accessibility tree constructed by Firefox:
For some reason, Chrome decides not to expose the
<label>
elements, though I don't see any support for this decision in the Core AAM. If I add an explicit role oflabel
to both elements, they are however included.Either way, the problem is that this to me perfectly reasonable pattern fails the rule as the two
<label>
elements are not required children of theradiogroup
role. If we also consider implicit semantics, which Alfa does as mentioned by @Jym77 in #1413 (comment), the following case is also troublesome:Because of this, it seems best to change the expectation of the rule to only require that at least one required owned element is present. Thoughts?
The text was updated successfully, but these errors were encountered: