Open scottaohara opened 1 year ago
I don't recommend this as a general statement, mainly because this is only valid on modal dialogs and not on any other valid implementations of aria-hidden where the option of tunneling into hidden content would only cause confusion.
E.G. Often aria-hidden is used within interactive widgets to prevent the announcement of redundant content or non-sensical Unicode characters.
Examples: https://whatsock.com/Templates/Switches/Standard/index.htm Or the use of aria-hidden on SVG elements to hide child nodes.
I don't have a problem with singling out the use of inert with dialogs, just that aria-hidden is used for many things that are not all dialog-centric.
Another more complex example of this is within the datepicker at: https://whatsock.com/Templates/Datepickers/Basic/index.htm Where the week day elements don't make sense to be included within the accessibility tree and need to be hidden, but not from sighted users.
My point is that aria-hidden has many uses that are hard to predict and genralize, and many of them would cause issues when combined with inert or if there was an option to tunnel into their content.
@accdc not sure i follow the rational for your examples, since each of those instances of aria-hidden that you're using could now instead use inert to achieve the same effect. but maybe you're thinking of something specific that i'm not noticing. i did review each and for each instance of aria-hidden that i found, inert works just as well unless i missed something?
the point i'm trying to bring up is that there is presently no recourse for AT to help their users if the hidden content is completely dropped from the accessibility tree. the manner in which they could make people aware of this fact - that there is extra content that can be seen or even interacted with is largely outside of the scope of what they can even work around, without being given access to the content that has been purged.
Agreed that people have used aria-hidden
in many ways which are hard to predict and generalize. That was never my intent to indicate that they were, or to even try to solution this away into a neat little bow. But looking forward to discussing this more. I'm sure there's a lot of counter points and use cases that might make this hard to impossible to revise. But maybe it can be the starting point to think of something better, or at the very least, a way to uncover an escape hatch for people who can't access content due to highly inappropriate use of aria-hidden which goes unnoticed since it doesn't impact anyone not using AT.
Put on agenda for 29th meeting
Edit: we did not get to this topic yet, putting on July 13th meeting
@aaron if you could link related issues
I think it's worth experimenting with these and perhaps putting behind a flag in one of the browsers, to see if people like the changes:
<html>
or <body>
)+1 for TPAC
@scottaohara todo: add notes here for things to consider for the f2f discussion
The ARIA Working Group just discussed Rethink how "hidden" is aria-hidden content?
.
Discussed during TPAC this week, notes here: https://www.w3.org/2023/09/11-aria-minutes#t06
And draft PR already up here: https://github.com/w3c/aria/pull/2037
I think if https://github.com/w3c/aria/pull/2181 is accepted, then this issue can probably be closed - as the majority of error cases that might result in someone wanting to be able to unhide aria-hidden content will largely be taken care of by that PR as well as https://github.com/w3c/aria/pull/1880
Now that
inert
is implemented in browsers, essentially doing what aria-hidden could never really do - fully preventing all users from being able to access content the attribute is applied to, should this be noted for the aria-hidden attribute? That, depending on context, there may be a more robust host language tool available?Additionally, as we are aware that use of the attribute can often be.... problematic (re: incorrect), and there have already been actions taken to re-expose hidden content when it receives keyboard focus, the question was raised to me whether aria-hidden=true should instead not prune the content from the accessibility tree, but instead mark it as "hidden". The intent there being to still expose the content via the a11y tree, but allow AT to inform users they have reached hidden content, and give them the choice to go venturing into it, or to navigate to the content that isnt' marked as hidden.