Does this page look plain and unstyled?

Tools, wizards, articles and tutorials on Web Accessibility for the conscientious web developer

Subscribe to Accessify's RSS Feed   

Validity, Accessibility, Flash: Choose Two

If you’re a Flash developer, and are using the accessibility features of the authoring tool to make your Flash objects directly accessible, you’d probably like to be sure that users of the supported browsers and screen readers can use those features. But common techniques for embedding Flash while still using valid HTML, which is not as easy as it seems, appear to cause trouble when it comes to reaching those users. This all stems from the use of the embed element in the default Flash output HTML, and various tricks exist to quash that renegade element. Andrew Kirkpatrick of Macromedia has put out an evaluation of Flash embedding tricks, testing them for direct accessibility to the Flash object.

A popular method for presenting Flash objects in a valid form is Drew McLellan’s Flash Satay, which strips the object code down to its bare minimum, and removes the embed. This is functional in most cases, and having been demonstrated on A List Apart, has quite a following. But it has some side effects, the worst of which is incompatibility with the screen reader Jaws. Andrew discovered that Satay prevents Jaws from accessing Flash’s accessibility-related internals.

More recently, Bobby Vandersluis presented Unobtrusive Flash Objects (UFO), which alleviates many of Satay’s side effects, as well as passing Andrew’s assistive technology test suite. The HTML page will even validate. Great news, right? Sadly, there are a couple of gotchas that will trouble the hardcore standardistas: first, UFO works by affixing invalid code to a placeholder block via JavaScript. So you haven’t polluted your source, per se, but you’re still inserting invalid code into the document’s DOM tree. That placeholder block is also a little problematic in that it has no semantic value in the context of the document, and in the absence of JavaScript, you’ll only get blank space. (Another script, Geoff Stearns’ FlashObject, exhibits all the same behaviors as UFO.)

This information leaves designers with some unattractive choices to make:

Default Macromedia code
This uses the invalid embed element, but otherwise works for all browsers and assistive technologies. It’s accessible, and it’s Flash, but it’s not valid.
Flash Satay
With the leading screen reader unable to access it, this is valid, and it’s Flash, but it’s hard to call it accessible.
UFO and FlashObject
Since it falls back to embed in all browsers other than Internet Explorer on Windows, this approach also fails the validity sniff test, though it does still allow accessible Flash in the tools Andrew tested.
Nested Objects
Ian Hickson offered an approach based on nested objects, but the test shows that Flash objects mis-render or fail in IE 6 for Windows, the Window-Eyes screen reader, and the Home Page Reader talking browser. It’s the worst possible outcome: validity, but neither accessibility nor reliable Flash rendering.

So, who’s to blame? It’s our good friends, legacy and interoperability. Support for object is still lacking in nearly every browser, surprisingly enough, and this has caused the situation to snowball over a number of years. It’s not fun to talk about, or even to remember, but it’s a problem we’ve been facing for years, and will have to face for a few more. There is no quick fix. In fact, there’s nothing to do in this situation but to make sure that each authoring tool, browser and assistive technology has standardized support for object in the near future. Until then, authors using the accessibility features of Flash will have a Hobson’s choice: cheat on validity, or fail to reach the audience they had designed for.

Is there a middle ground? Could there be a technique that is functional across browsers and platforms, doesn’t impede the Flash loading, preserves access to its internal accessibility features, and remains valid? Code jockeys, prick up your ears: this is your next technical challenge.

Comments (2) left to “Validity, Accessibility, Flash: Choose Two”

  1. bobby wrote:

    2 comments regarding UFO:

    1. Your statement about the replacement block is incorrect. The replacement block is there to insert semantic content for all cases where there is not enough Flash/JavaScript support. If there is enough support, its content will be replaced by the Flash object.

    2. UFO (and FlashObject) only inserts the embed element for those browsers that use the Netscape plugin API.

  2. Joe Clark wrote:

    Maybe someday I’ll get around to updating this, but I do have a list of every known way (at time of writing) to use embed or object in valid code.

Post a Comment

(Never published)
 

Site Navigation

Outside reading

Jeremy Keith does an excellent write-up of the Accessibility 2.0 conference (which I was unable to attend)
Sharepoint and Web Accessibility
Bruce Lawson describes the disparity between Sharepoint/MOSS developed web sites and the level of accessiblity that the tool offers to users (summary - it really is not good!)
How does a screen reader user really hear your web site?
Interesting post on Beast Blog about how a screen reader user - a real one! Not one of those fake web developer tester types! - uses the tool to read a web page. A few surprises were waiting in store for author Mike Cherim.
Web Accessibility Toolbar now available in simplified Chinese
The Web Accessibility Tools Consortium (WAT-C) release a simplified Chinese version of the Web Accessibility Toolbar.
Web 2.0 vs Web Accessibility
1-day seminar in London, 25th April, brings together experts in the field to discuss/demonstrate the accessibility issues faced by web 2.0.
Leading accessibility technologists form new alliance to fix problems
The Accessibility Interoperability Alliance (AIA), comprising (among others) Adobe, HP, Microsoft, Novell, and from the assistive tech industry Dolphin, GW Micro and HiSoftware forms to work together "to create and harmonize standards for accessible techn
Fieldsets, legends and screen readers
An excellent run-down of how fieldsets and legends can improve accessibility and how the various screen readers cope with this useful markup.
CAPTCHAs explained - WacBlog
Another really good post on the RNIB\'s Web Access Centre blog explaining captchas, why they\'re bad for accessibility and what the alternatives may be.
Making WCAG easier to read
Derek Featherstone has created some fancy style sheets to make reading WCAG documents a little easier on the eye.
Top Tips for the title attribute
Ann McMeekin provides a set of simple tips regarding when - or rather when not to - use the title attribute. \'Cos sometimes you can try *too much* to be helpful
California court tilts towards mandating web accessibility
Outlaw.com reports (on behalf of The Register) on the Target California class action lawsuit, digging a little deeper into what Target have been doing of late to address matters.
Screen Readers and display:none
Juicy Studio, aka Gez Lemon, investigate some quirks whereby screen readers announce content that they should not be. Perhaps this could be used for good rather than evil?
Google Developer Podcast: The status of accessibility on the Web
An interview with Google research scientist TV Rahman (and Hubbell, his seeing-eye dog!). Lots of talk about CAPTCHAs and accessibility, but no sign of a transcript for this interview as yet.
Transcript of Shawn Henry's talk from Jun 5th 2007 in London on RNIB's Web Access Centre Blog
Virtual worlds open up to blind
"Online virtual worlds could soon be accessible to blind people thanks to research by students at IBM in Ireland" states BBC News

View all Accessify bookmarks on del.icio.us



This page is styled using Cascading Style Sheets (CSS). If you can read this message, the chances are that your browser does not properly support CSS or you have disabled this yourself. The content on this site is perfectly readable without style sheets, though; it just doesn't look quite so fancy.

site statistics

This site is partnered with MIS Web Design and Top4Office for Copiers and Digipro for Photocopiers. Web design by Swindon Internet & PR Services.

How you can help support this site: Learn web design from the creator of this site, or help him by requesting some PR Photography