aria-hidden false value shouldn't be exposed via object attributes

RESOLVED FIXED in mozilla21

Status

()

Core
Disability Access APIs
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: surkov, Assigned: surkov)

Tracking

(Blocks: 1 bug, {access})

unspecified
mozilla21
access
Points:
---
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

4 years ago
aria-hidden:false doesn't have any meaning since it can't be used to show a hidden content, neither not rendered content nor aria-hidden=true content.

1) not visible content:

5.1.1. Excluding Elements from the Accessibility Tree (http://www.w3.org/WAI/PF/aria-implementation/#exclude_elements2):

"Elements, including their descendents, that have host language semantics specifying that the element is not displayed, such as CSS display:none or visibility:hidden or HTML 5 hidden attribute."

That means aria-hidden=false can't be used to show the element having display:none

2) aria-hidden=true content (thanks to Joseph for clarification, citing him):

The UAIG also gives rules for when to exclude elements from the a11y tree in section 5.1.1 (http://www.w3.org/WAI/PF/aria-implementation/#exclude_elements2). Specifically:

• Elements, including their descendents, that have a WAI-ARIA global attribute of |aria-hidden| <http://www.w3.org/WAI/PF/aria/states_and_properties#aria-hidden>|="true".| In other words, |aria-hidden="true"| on a parent overrides |aria-hidden="false"| on descendants.

There was a relatively lengthy discussion about this a while back. The conclusion, in the end, was that aria-hidden mirrors CSS display:none. If you have:

<div style="display:none"> ... stuff ... <div style="display:block">Is this displayed?</div> ... other stuff ... </div>

The "Is this displayed" is *not* displayed. The ancestral display:none style overrules the local display:block style. That is documented in the CSS spec as well:
http://www.w3.org/TR/CSS2/visuren.html#display-prop
(Assignee)

Comment 1

4 years ago
Created attachment 711737 [details] [diff] [review]
patch
Assignee: nobody → surkov.alexander
Status: NEW → ASSIGNED
Attachment #711737 - Flags: review?(trev.saunders)
Attachment #711737 - Flags: review?(trev.saunders) → review+
https://hg.mozilla.org/mozilla-central/rev/ac292e9fc785
Status: ASSIGNED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla21
(Assignee)

Comment 3

4 years ago
(In reply to Ryan VanderMeulen [:RyanVM] from comment #2)
> https://hg.mozilla.org/mozilla-central/rev/ac292e9fc785

this was empty checking, the correct one is http://hg.mozilla.org/integration/mozilla-inbound/rev/80fa2c61df14
https://hg.mozilla.org/mozilla-central/rev/80fa2c61df14
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.