ARIA landmark role with aria-hidden set to true

accessibility, wai-aria

Solution

I am confused at what you are trying to do here. An ARIA Landmark, allows a person using assistive technology to jump to certain parts of a page, so they don't need to read through the page to find a specific area. For example a sidebar, you could add `role="complementary"`, or use the HTML5 `<aside>` tag. More information on HTML5 & roles at PGB.

The `aria-hidden` attribute is slightly counter-intuitve. So if we have:

<p aria-hidden="true">My cool text</p>

in code. The browser will render:

My cool text

If we look at this same block of text with assistive technology, the result would be like having

 <p></p>

Since you are combining a landmark and an attribute, JAWS is unsure what to do. Since landmarks have more power/authority/whatever, and you say give me all the landmarks, it will see it, and allow you to navigate there. However, once you're in it, it will see `<div></div>`.

Problem

ARIA landmark role with aria-hidden set to true are also shown when user lists out the landmarks regions. ( While using JAWS: Jaws key + CTRL + ;) Example: ``` <div role="region" aria-label="tools menu" aria-hidden="true">....</div> ``` Which is displayed only on a click of a button "Tools menu" My question is, - Is there a way such that this is not displayed when user lists out landmark roles? - Jaws didn't announce that particular region is hidden when I got into that using landmark role. What could have gone wrong? i am using Jaws 12.0 - Is it working as expected?

Original source