Open sivakusayan opened 2 years ago
@sivakusayan Please note that in your example, this specification is not responsible for determining which HTML radio buttons belong to the group and what position they have within the group, because this is governed solely by the HTML specification. The rules for ARIA radio buttons differ from this, because e.g. in ARIA the membership to the group is not regulated by the name attribute.
@JAWS-test Thanks for the correction, I'm still trying to make heads or tails of how the different specifications interact with each other 🙂
Thinking about this a little more, I'm guessing that the rules for this will need to differ depending on what child elements we are counting. For example, if we are counting ARIA radio buttons, we'll need to consider if there is a radiogroup
ancestor. But we don't care about radiogroups
if we are counting something like tabs
.
I think the rules for counting actually depend on whether I'm using HTML or ARIA. Whether the ARIA rules are sufficiently accurate and useful, I can't judge. I think that with ARIA elements, the parent elements always play a role as well:
etc.
Currently, the Group Position section says that to compute
aria-posinset
andaria-setsize
, user agents should:Practically, it seems that browsers use a little bit more nuance in determining what the "parent" of the set should be. For example, here is where Chromium decides to ignore certain nodes for these calculations. This makes it so if we have
<divs>
wrapping things like a radio button for some reason, we can still report the correct PosInSet and SetSize:However, it seems like browsers have slightly different behaviors in determining what nodes to ignore and not ignore. Unless I'm missing something, I think the spec should call out what roles should be ignored so we don't get interoperability bugs like this one, where it seems like table rows/cells are ignored as parents in Firefox but considered parents in Chromium.