Specify what should happen when unhiding an ancestor of a live region
With each of the structures below, what should happen?
- Load a page with one of the structures below
- Unhide the parent container
Structure 1: unhiding visually
<div style="display:none;"> <-- e.g., inside a disclosure widget -->
<div aria-live="polite">chat message: hello</div>
</div>
Structure 2: unhiding from assistive technology
<div aria-hidden="true"> <-- e.g., behind a dialog -->
<div aria-live="polite">chat message: hello</div>
</div>
Browsers are currently inconsistent. aria-live example with test results
The consequence of the inconsistency is that aria-live is difficult to use on visible content, like a chat log, when combined with other common widgets in the same page such as a disclosure widget or a dialog.
If Core AAM is not the right place for this issue, please let me know.
Related https://github.com/w3c/aria-practices/issues/78, https://github.com/w3c/aria/issues/1854
I have come to share the assumptions you made on your test page as a basis for evaluating screen reader output, even though I wrote otherwise years ago in the linked issues
closing in favour of the aria issue w3c/aria#1937