RE: How the W3C Text Alternative Computation Works

Rich,

In this example the div also contains the INPUT element being labeled, so the value of the INPUT element is value attribute supposed to be excluded or included in the accessible name calculation?

Jon


From: Richard Schwerdtfeger [mailto:schwer@us.ibm.com]
Sent: Tuesday, December 22, 2015 8:01 AM
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
Subject: Re: How the W3C Text Alternative Computation Works


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

[Inactive hide details for Steve Faulkner ---12/22/2015 03:36:31 AM---Hi Brian, am unclear about the example using visbility:hid]Steve Faulkner ---12/22/2015 03:36:31 AM---Hi Brian, am unclear about the example using visbility:hidden The Name for this edit field is “Count

From: Steve Faulkner <faulkner.steve@gmail.com<mailto:faulkner.steve@gmail.com>>
To: Bryan Garaventa <bryan.garaventa@whatsock.com<mailto:bryan.garaventa@whatsock.com>>, public-aria@w3.org<mailto:public-aria@w3.org>
Cc: Joseph Scheuhammer <clown@alum.mit.edu<mailto:clown@alum.mit.edu>>, Richard Schwerdtfeger/Austin/IBM@IBMUS, Joanmarie Diggs <jdiggs@igalia.com<mailto:jdiggs@igalia.com>>, Dominic Mazzoni <dmazzoni@chromium.org<mailto:dmazzoni@chromium.org>>, James Craig <jcraig@apple.com<mailto: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<https://urldefense.proofpoint.com/v2/url?u=http-3A__codepen.io_stevef_pen_LGZQvr&d=BQMGaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=REZD8fc2AwufInstfW3L5jSLVS8bjZtAodDOhat7yAI&m=-sp3acNwAT-y5XqSxmEojWpJiEHyLtEQ7UIAm-yDpkA&s=fG6F0c8WqO0CZ9-O4_-ATtet1EWrsU2QOi-JcHVgZNs&e=>

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<https://urldefense.proofpoint.com/v2/url?u=http-3A__rawgit.com_w3c_aria_master_accname-2Daam_accname-2Daam.html&d=BQMGaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=REZD8fc2AwufInstfW3L5jSLVS8bjZtAodDOhat7yAI&m=-sp3acNwAT-y5XqSxmEojWpJiEHyLtEQ7UIAm-yDpkA&s=Pm14d88Eh8i-15zIdAsF6lLipFzrv4JStTDOeVB6w0A&e=>


--

Regards

SteveF
Current Standards Work @W3C<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.paciellogroup.com_blog_2015_03_current-2Dstandards-2Dwork-2Dat-2Dw3c_&d=BQMGaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=REZD8fc2AwufInstfW3L5jSLVS8bjZtAodDOhat7yAI&m=-sp3acNwAT-y5XqSxmEojWpJiEHyLtEQ7UIAm-yDpkA&s=AhPdLoitwrtu6oRfO2pUjERsO8GskWTxmbmR3EJ8QhE&e=>

On 21 December 2015 at 18:41, Bryan Garaventa <bryan.garaventa@whatsock.com<mailto: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/<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.ssbbartgroup.com_blog_how-2Dthe-2Dw3c-2Dtext-2Dalternative-2Dcomputation-2Dworks_&d=BQMGaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=REZD8fc2AwufInstfW3L5jSLVS8bjZtAodDOhat7yAI&m=-sp3acNwAT-y5XqSxmEojWpJiEHyLtEQ7UIAm-yDpkA&s=PXbl5tOK-3KeyoLo7M83bAG2L6pWCMeedQzB0H2BUuo&e=>

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

Received on Tuesday, 22 December 2015 14:39:10 UTC