WebAIM - Web Accessibility In Mind

E-mail List Archives

Thread: JAWS 10 and Hidden Text

for

Number of posts in this thread: 9 (In chronological order)

From: Terrill Thompson
Date: Mon, Mar 23 2009 1:55PM
Subject: JAWS 10 and Hidden Text
No previous message | Next message →

It just came to my attention that JAWS 10.0.1139 has the following Internet
Explorer enhancement:
"JAWS no longer announces input fields that are hidden from view by a
cascading style sheet."

That's listed here:
http://www.freedomscientific.com/downloads/jaws/JAWS-whats-new.asp#Enhanceme
nts

Anyone know what this means? I just tested an input field (and paragraph,
for comparison) hidden using various techniques, and I'm not observing any
changes in JAWS behavior. JAWS does not read content hidden using
visibility:hidden or display:none, and it does read content positioned off
screen. I just want to make sure I'm not missing something critical.

Here's my test page:
http://terrillthompson.com/tests/hiddencontent.html

Thanks,

Terrill Thompson
Technology Accessibility Specialist
DO-IT, Accessible Technology
UW Technology Services
University of Washington
= EMAIL ADDRESS REMOVED =
206/221-4168

From: Jared Smith
Date: Mon, Mar 23 2009 2:05PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | Next message →

I believe they may have addressed the instances outlined here -
http://juicystudio.com/article/screen-readers-display-none.php - where
content hidden with display:none was being read by JAWS.

If this is indeed the case, then this is a very good thing as content
that is truly hidden with CSS should never be identified by screen
readers.

Jared Smith
WebAIM

From: Randi
Date: Mon, Mar 23 2009 2:45PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | Next message →

Hi there. I'm just curious if Test 1 and Test 2 were supposed to show
anything or not? Because using Voiceover there was nothing under those
headings after the description. Test 3 worked just fine.

Was that what you are trying to see? Because if there's supposed to be
content there for the first 2 tests, then Voiceover did not read it.

Thanks,
Randi

On 3/23/09, Jared Smith < = EMAIL ADDRESS REMOVED = > wrote:
> I believe they may have addressed the instances outlined here -
> http://juicystudio.com/article/screen-readers-display-none.php - where
> content hidden with display:none was being read by JAWS.
>
> If this is indeed the case, then this is a very good thing as content
> that is truly hidden with CSS should never be identified by screen
> readers.
>
> Jared Smith
> WebAIM
>

From: Al Sparber
Date: Mon, Mar 23 2009 3:15PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | Next message →

From: "Terrill Thompson" < = EMAIL ADDRESS REMOVED = >

> It just came to my attention that JAWS 10.0.1139 has the following
> Internet
> Explorer enhancement:
> "JAWS no longer announces input fields that are hidden from view by a
> cascading style sheet."
>
> That's listed here:
> http://www.freedomscientific.com/downloads/jaws/JAWS-whats-new.asp#Enhanceme
> nts
>
> Anyone know what this means? I just tested an input field (and paragraph,
> for comparison) hidden using various techniques, and I'm not observing any
> changes in JAWS behavior. JAWS does not read content hidden using
> visibility:hidden or display:none, and it does read content positioned off
> screen. I just want to make sure I'm not missing something critical.
>
> Here's my test page:
> http://terrillthompson.com/tests/hiddencontent.html

In JAWS 10, only the off-screen content is accessible. Nothing else,
including your ARIA labels, is accessible.

Why would you feel you need to use ARIA? It would seem that if it should be
used at all it's primary value would be for added content, not existing
content that is hidden. There are too many more practical ways to make
hidden content accessible.

--
Al Sparber - PVII
http://www.projectseven.com

From: Terrill Thompson
Date: Mon, Mar 23 2009 3:55PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | Next message →

Hi Randi,

You're correct - I expected Test 1 (using visibility:hidden) and Test 2
(using display:none) to both be hidden visibly, as well as hidden to screen
reader users. Test 3 is hidden by positioning text off screen, which has
become a widely accepted means of hiding content visibly that you want
screen readers to read.

My initial concern when I saw the JAWS "bug fix" was that they might have
"fixed" the off-screen positioning solution. Fortunately that's not the
case.

Jared correctly pointed out that the JAWS fix applies to a bug documented in
a Juicy Studio article, where JAWS was erroneously reading content hidden
using display:none, but only under certain very specific circumstances (only
on span elements nested within anchor tags).

Terry

>

From: Randi
Date: Mon, Mar 23 2009 4:10PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | Next message →

Interesting. So Voiceover passed the test. I'm enjoying seeing that
Voiceover so far matches Jaws. Why would you want content to be
hidden? Is it like a security thing, where things are hidden, but that
Jaws was reading?

On 3/23/09, Terrill Thompson < = EMAIL ADDRESS REMOVED = > wrote:
> Hi Randi,
>
> You're correct - I expected Test 1 (using visibility:hidden) and Test 2
> (using display:none) to both be hidden visibly, as well as hidden to screen
> reader users. Test 3 is hidden by positioning text off screen, which has
> become a widely accepted means of hiding content visibly that you want
> screen readers to read.
>
> My initial concern when I saw the JAWS "bug fix" was that they might have
> "fixed" the off-screen positioning solution. Fortunately that's not the
> case.
>
> Jared correctly pointed out that the JAWS fix applies to a bug documented in
> a Juicy Studio article, where JAWS was erroneously reading content hidden
> using display:none, but only under certain very specific circumstances (only
> on span elements nested within anchor tags).
>
> Terry
>
>>

From: Terrill Thompson
Date: Mon, Mar 23 2009 4:20PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | Next message →

Hi Al,

The ARIA on my example page was not intended to be a recommendation for how
to hide text. It's just a test to see whether the "aria-labeledby" attribute
overrides all methods of hiding content using CSS. This would be a handy
method on a page with dynamic content, where you didn't want anyone,
including screen readers, to see the content initially, but you wanted that
content to be rendered to everyone later, triggered by certain events.

It actually does work in browsers that support ARIA. I tested it in Firefox
3, and JAWS 10 read expanded labels for all three buttons, and these
expanded labels had been hidden using visibility:hidden, display:none, and
off-screen positioning, respectively. It doesn't work in IE7, but I suspect
it works in IE8 - I haven't tested that.

Terry

>

From: Terrill Thompson
Date: Mon, Mar 23 2009 4:30PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | Next message →

There's an excellent WebAIM article about hiding content:
http://webaim.org/techniques/css/invisiblecontent/

Don't read that though without also reading this hot-off-the-press update:
http://webaim.org/blog/hiding-content-for-screen-readers/

Terry

>

From: Al Sparber
Date: Mon, Mar 23 2009 8:55PM
Subject: Re: JAWS 10 and Hidden Text
← Previous message | No next message

Hi Terry,

Yes, I know Firefox has support for ARIA, but the vast majority of JAWS
users do not run Firefox. I guess my point was there are easy ways to make
hidden in-page content accessible without having to use ARIA. The only issue
would be with triggers that come after the hidden content. A better test
would be to script your buttons so that they made the hidden content visible
and then see if you can take JAWS to that content. Right now, the rest only
proves that ARIA can take a label from an element that is hidden. That
doesn't make the form field that is "display:none" accessible.


From: "Terrill Thompson" < = EMAIL ADDRESS REMOVED = >

> Hi Al,
>
> The ARIA on my example page was not intended to be a recommendation for
> how
> to hide text. It's just a test to see whether the "aria-labeledby"
> attribute
> overrides all methods of hiding content using CSS. This would be a handy
> method on a page with dynamic content, where you didn't want anyone,
> including screen readers, to see the content initially, but you wanted
> that
> content to be rendered to everyone later, triggered by certain events.
>
> It actually does work in browsers that support ARIA. I tested it in
> Firefox
> 3, and JAWS 10 read expanded labels for all three buttons, and these
> expanded labels had been hidden using visibility:hidden, display:none, and
> off-screen positioning, respectively. It doesn't work in IE7, but I
> suspect
> it works in IE8 - I haven't tested that.