JavaScript, accessibility, microformats

Last wednesday I was down in the Big Smoke, so went to the Web Standards Group JavaScript Meetup to see Steve Faulkner talk on De-Mystifying Screen readers. I’ve admired Steve’s work for a while, because he actually tests real examples on real screenreaders (which is a horrible job).

Here’s what I learned.

I was also glad I stuck around for Christian’s talk (I was planning to haul my arse home), as it was hilarious. And he bunged me a copy of his new book to review (after I’ve reviewed PPK on JavaScript and Matthew Eernisse’s Ajax book ..)

Also see Mike Davis’ detailed notes.

Microformats

One of the questions in the QA was a guy asking about the default behaviour of a screenreader when it encounters an abbr in a microformat. He seemed very relieved when Steve confirmed that it doesn’t expand the abbreviation.

I’m glad that our Web Standards Project article, hAccessibility is being read and thought about but no-one should feel relieved by this confirmation of JAWS’ default behaviour.

Just because the out-of-the-box setting is accessible shouldn’t lead to complacency. This is an assistive technology we’re talking about, and one of its options for extra accessibility is to expand abbreviatons, as recommended in WCAG 1.

In JAWS, you access this options from Utilities, Configuration Manager, HTML Options:

screenshot of JAWS HTML options showing checkboxes to expand acronyms and abbreviations

And thus, a power user gets extra help, unless you choose to break it by misusing the abbr element.

It’s like scrambling text if a user increases his font size, and saying it’s fine because the default settings were accessible.

Do you disbelieve that it breaks accessibility? Check out this Geo information, which is a shortened version from http://www.w3.org/People/Connolly/events/
which the microformats wiki links to as an example “in the wild”:

Let's go to <abbr class="geo" title="30.300474;-97.747247">Austin, TX</abbr>

With abbreviations expanded, it no longer says “Austin TX”, but instead it’s an incomprehensible string of numbers (mp3):

Thirty point three oh oh four seven four semi-colon minus ninety-seven point seven four seven two four seven

Is that accessible?

One Response to “ JavaScript, accessibility, microformats ”