w3c / html-aria

ARIA in HTML
https://w3c.github.io/html-aria/
Other
178 stars 48 forks source link

Consider further rules for aria-hidden #448

Open scottaohara opened 1 year ago

scottaohara commented 1 year ago

As a follow on to https://github.com/w3c/html-aria/pull/447, this issue is being created in case there are other elements which should disallow the use of aria-hidden on them.

For instance, focusable elements which have not been provided a tabindex=-1 or disabled attribute (noting that for the tabindex=-1 case, that CSS pointer event cancellation would need to also be added, but that may be out of scope for what can reasonably be checked).

nschonni commented 1 year ago

Would <main> also fall in a similar category, or maybe not anymore, since multiple <main> were made allowed in HTML

scottaohara commented 1 year ago

a warning for main, maybe. but there could be reasons to use it on main.

e.g., this would still be allowed, as without using inert, this was one of the best ways to make a web page hidden to a screen reader when a modal dialog was open.

<body>
  <header aria-hidden=true>...</header>
  <main aria-hidden=true>...</main>
  <div role=dialog ...>...</div>
</body>

so we wouldn't want to fail a page for doing something valid like that. the html/body aria-hidden=true is far more harmful and i would submit is far more common due to misunderstanding how to use aria, rather than being done for a valid use case.