- From: Richard Schwerdtfeger <schwer@us.ibm.com>
- Date: Tue, 22 Dec 2015 08:00:35 -0600
- To: Steve Faulkner <faulkner.steve@gmail.com>
- Cc: Bryan Garaventa <bryan.garaventa@whatsock.com>, Joseph Scheuhammer <clown@alum.mit.edu>, Dominic Mazzoni <dmazzoni@chromium.org>, James Craig <jcraig@apple.com>, Joanmarie Diggs <jdiggs@igalia.com>, public-aria@w3.org
- Message-ID: <OF747E813C.415D282A-ON86257F23.004C7567-86257F23.004CF5A0@us.ibm.com>
This is pretty straight forward. You have a aria-labelledby pointing to a div. From there you get name from contents. It does not matter if the content is hidden or display:none. You concatenate all the text content. There is no difference between display:none or visibility:hidden. Visibility:hidden is essentially not displaying the content but leaving this hole in the display to wrap around. It is still content that is not displayed by the author. Done. The accessible name should be: "Email address: Error: A valid email address is required." If we need clarity in the spec. but there should be no difference. for visibility: hidden vs. display: none. It is not displayed as intended by the author. The error message should be take outside the containing dive with the parentID id. Remember we are going to have an error relationship now. Rich Schwerdtfeger From: Steve Faulkner <faulkner.steve@gmail.com> To: Bryan Garaventa <bryan.garaventa@whatsock.com>, public-aria@w3.org Cc: Joseph Scheuhammer <clown@alum.mit.edu>, Richard Schwerdtfeger/Austin/IBM@IBMUS, Joanmarie Diggs <jdiggs@igalia.com>, Dominic Mazzoni <dmazzoni@chromium.org>, James Craig <jcraig@apple.com> Date: 12/22/2015 03:36 AM Subject: Re: How the W3C Text Alternative Computation Works Hi Brian, am unclear about the example using visbility:hidden The Name for this edit field is “Country”, and the Description is “Choose the country where you currently reside.” The reason for this, is that the naming calculation allows for aria-labelledby and aria-describedby to reference hidden elements, however this is only true if it is the referenced element or one of its parent elements that is hidden. This is possible here using display:none, because this CSS property is not inheritable, and thus is not applied to the child span element. The following examples demonstrate this difference: <div id="parentId"> Email address: <input aria-labelledby="parentId" type="text" /> <div class="validationError" style="display:none;" aria-hidden="false" > Error: A valid email address is required. </div> </div> I don't see in the spec[1] where the difference between CSS display:none and CSS visbility:hidden is defined. In IE and Firefox on windows and chrome,safari, etc on iOS the description is exposed and is announced test file: http://codepen.io/stevef/pen/LGZQvr note: tabindex="-1" is added to the hidden div for IE, this is due to a known limitation of IE's support for aria-describedby. I also don't think your interpration is helpful as it adds another level of complexity to an already complex algorithm. There should be no difference between the effect of display:none and visibility:hidden on accessible name calculation [1] rawgit.com/w3c/aria/master/accname-aam/accname-aam.html -- Regards SteveF Current Standards Work @W3C On 21 December 2015 at 18:41, Bryan Garaventa <bryan.garaventa@whatsock.com > wrote: Hello, Recently I was asked to write a blog post explaining the naming calculation and how it works, which I've published at http://www.ssbbartgroup.com/blog/how-the-w3c-text-alternative-computation-works/ I believe I've covered everything of note that should help explain the algorithm and how it works. The only controversial aspect is the section regarding aria-hidden='false', however since this is written in the spec, this is the only way I see that logically explains how this would impact the naming calculation. I'll pass this around to spread the word; the more who understand the algorithm the easier it is to understand how ATs use it. Please let me know if anything is missing. Also, I wanted to thank Google for stepping up and doing an excellent job updating the recursive naming calculation with the most recent release of Chrome Canary, which now has the closest recursion algorithm match for the naming calculation as compared with any of the other browsers. This is really a great achievement, and all those who worked on this to get this done so quickly, should be congratulated since it will have a significant impact in the future. All the best, Bryan
Attachments
- image/gif attachment: graycol.gif
Received on Tuesday, 22 December 2015 14:02:39 UTC