Re: aria-hidden (updates need to implementation guide or spec)

Greetings.
The confusion arises from two different source.
First, there is the special case of <input type="hidden">
When aria-hidden="false" I believe this input should be announced,
even if it has no accessible name.
<code>
<div aria-hidden="false"
<input type="hidden" value="3">
</div>

Currently it does in at least one SR/OS combination and I am not sure
if I should file it as a bug, or if I should tell developers not to
use aria-hidden="false".
Even if we use a CSS selector to tie display: block (or any other
visible combination) to aria-hidden="false" we will come across this
problem if input with type="hidden" is used.
This issue could be solved by mapping <input type="hidden"> to
aria-hidden="true" in the html to ARIA mapping, (currently it does not
have an intro) and make sure that is consistently implemented as such
by browsers.

The second confusion is when CSS is used to hide sections of child
content of an element whose attribute is set to aria-hidden="false".
I have seen this happen a few times, especially in tabpanels
containing expandable regions or modal dialogs:

<code>
<div role="tabpanel" id="foo2" aria-hidden="false" class="activeTab">
...
<!-- expandable region inside the tab, initially in collapsed state... -->
<button aria-expanded="false">Click to see invoice details</button>
<div style="display: none;">
Content that is hidden until user activates a button in tabpanel
</div> <!-- hidden content -->
</div> <!-- tabpanel -->

My understanding of the spec is that the invisible content inside the
expandable region in the sample code should be visible in the DOM and
announced by assistive technologies.
I would personally prefer it if CSS determines visibility inside
aria-hidden="false" container.
This is not a problem if we remove the aria-hidden="true" attribute
when content becomes visible, set its value to "undefined", or follow
good coding practices and use aria-hidden to determine visibility for
all users.
Thanks
-B


On 3/20/15, James Craig <jcraig@apple.com> wrote:
>
>> On Mar 20, 2015, at 5:23 PM, Bryan Garaventa
>> <bryan.garaventa@ssbbartgroup.com> wrote:
>>
>>>> The problem in this particular case is exacerbated by the
>>>> recommendation that CSS selectors be used on the attribute to control
>>>> visual display as it would encourage using aria-hidden="false" rather
>>>> than removing the attribute when content is no longer hidden.
>>>
>>> Is this a hypothetical problem, or do you have a real-world example of
>>> someone doing this?
>>
>> This is actually something that people have been recommending and
>> implementing for quite a while now.
>> " 5.  CSS selectors are used to bind aria-hidden and CSS display:none."
>
> Ah that. I thought Birkir was referring to something else.
>
> If display:none stays in sync with aria-hidden=false, as all your examples
> do, there will never be a problem. We're just working on clarifying what
> happens when they don't: both the authors expectations, and the UAs
> implementation considerations.
>
> James
>
>

Received on Monday, 23 March 2015 11:59:05 UTC