W3C home > Mailing lists > Public > public-html-a11y@w3.org > October 2012

[Bug 19277] Relationship and precedence of hidden="" and display:none should be clarified/defined

From: <bugzilla@jessica.w3.org>
Date: Thu, 04 Oct 2012 23:19:07 +0000
Message-Id: <E1TJuh9-0004b5-SU@jessica.w3.org>
To: public-html-a11y@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=19277

--- Comment #3 from John Foliot <john@foliot.ca> 2012-10-04 23:19:07 UTC ---
(In reply to comment #1)
> should hidden="" behave like display:none, or should hidden=""
> behave more like <input type=hidden>?

It would appear from the first link Boris provided
(http://dev.w3.org/html5/spec/single-page.html#hidden-elements) that <input
type="hidden"> and @hidden have the same default CSS rendering:

{
  display: none;
}

(small quibble: there is no hidden="" in HTML5 that I am aware of)

***

(In reply to comment #2)
> This is already clearly defined in the specification.  

Except, since that part of the spec was written, other aspects of the spec have
changed, and specifically that @hidden content won't be hidden to all, but
rather just most: the content will continue to be exposed to the Accessibility
APIs via ARIA, and thus NOT hidden to Screen Readers and other tools or user
agents that support ARIA.
http://www.w3.org/html/wg/wiki/ChangeProposals/AllowAriaReferHidden

(I note that the section of the spec covering @hidden still states "if
something is marked hidden, it is hidden from all presentations, including, for
instance, screen readers." which I believe is not actually true anymore. -
http://dev.w3.org/html5/spec/single-page.html#the-hidden-attribute)

Despite some protestations, this was adopted by this Working Group, and
subsequently the rules have changed. To date {display: none;} has also been
processed by Screen Readers as content that "isn't there", but the Decision for
Issue 204 changed that: content that is @hidden will still preserve and convey
semantic structure to ARIA aware tools and those accessibility APIs. It would
seem then that instead it will now be much closer to {visibility: hidden;
height:0; width:0; overflow:hidden;}

Yes? No? Maybe?

If yes, it would appear that another bug needs to be filed against the parts of
the spec that Boris referenced, to bring them in-line with the Issue 204
decision.


>From the same links Boris provided, a hint to the answer posed by Michael:

   "What happens if the author changes to display:block but leaves @hidden
set?" 

...can be found with this statement: "The user agent is expected to force the
'display' property of noscript elements for whom scripting is enabled to
compute to 'none', irrespective of CSS rules." - that last part seems to
indicate (at least to me) that in the case of conflict, the HTML attribute's
"display rules" trumps any other CSS declaration supplied by the author
(manually or via scripting). If this is correct, it should likely be better
reflected in the spec.

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
Received on Thursday, 4 October 2012 23:19:09 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 4 October 2012 23:19:09 GMT