Creating Accessible Flash Content

Flash Accessibility Overview

Adobe Flash content can be viewed on nearly all computers. The Flash technology, in a general sense, may be one of the most widely available technologies used on the web. For developers, the ability to program one multimedia presentation that can be viewed the same on nearly all computers makes the technology very appealing. However, for individuals with disabilities, Flash can introduce unique accessibility problems.

Important

Throughout this content, there will be examples that you can view. All links to examples open in a new browser window. Many of these Flash examples are not fully accessible for demonstration purposes. In order to view the examples, you must have the Adobe Flash Player - external link installed. If you have the Flash MX or newer authoring program, you can download the .fla files used to create all examples by selecting the Download FLA file image next to each example.

Because of the multimedia nature of Flash, it can be used to deliver content through many mediums: graphics, text, video, audio, etc. Its power and flexibility give it potential to present web content in a fully accessible manner. Here are some examples of how Flash can increase accessibility:

  • Multiple ways of presentation: Flash can provide content in multiple ways. View an example of multiple presentation methods (Download FLA file).
  • Scalability: Because Flash is based on vector objects (mathematically defined lines and shapes) rather than raster (pixels of differing colors) technology, most Flash content can be easily scaled to any size without distortion. Individuals with low vision may be able to interact with Flash content in ways not possible with HTML content. View a scaleable example (Download FLA file).
  • Keyboard accessibility: Flash allows a higher level of keyboard interaction than is allowed in HTML. Many Flash movies can be made more functional, powerful, and easy to use by allowing keyboard access. View a keyboard example (Download FLA file).
  • Engaging: Flash can engage learners through interactivity, animation, sound, graphics, and many other ways. Individuals with learning or cognitive disabilities can better comprehend and focus on some Flash content. Flash multimedia can be used to supplement static HTML content.
  • Self-voicing: Because of the audio capabilities of Flash, it can present content through audio, thus removing the need for a screen reader to extract audio content from the Flash movie.

Flash Accessibility Issues

Despite the ability of Flash to create highly accessible content, there are some major issues you must be aware of regarding Flash and accessibility. Nearly all of the concepts that affect HTML accessibility can also apply to Flash. These include using plenty of contrast, consistent navigation, understandable language, etc. Here are some specific strategies to make Flash accessible to different disability types:

  • Hearing disabilities
    • Provide synchronized captions for any audio that conveys content
  • Photo epilepsy
    • Remove strobing content that flashes between 2 and 55 times per second
  • Motor disabilities
    • Ensure the Flash content is keyboard accessible
    • Do not require fine motor skills
  • Cognitive disabilities
    • Give users control over time sensitive content
    • Provide easy to use controls and navigation schemes
    • Be consistent
    • Use the clearest, simplest language appropriate to the content
  • Low vision
    • Provide plenty of contrast
    • Allow the Flash content to scale to a larger size
  • Blindness
    • Ensure screen reader accessibility or provide an accessible alternative
    • Ensure keyboard accessibility
    • Do not interfere with screen reader audio or keyboard commands
    • Provide textual equivalents for all non-text elements that convey content or provide a function.

Although each of these strategies can increase accessibility, Flash content is rarely designed to include all of these strategies at the same time, thus making it inaccessible in some way. When all accessibility techniques are applied to Flash, it can be universally accessible, perhaps even more so than HTML, because the need for specific assistive technologies (with their accompanying limitations) is removed. However, such an endeavor would be difficult or even impossible with a majority of Flash content. In short, unless all of the accessibility techniques are applied, Flash may not be accessible.

Assistive Technology Support for Flash

Important

The majority of Flash content cannot be made natively accessible to screen readers.

By its very nature, Flash content does not lend itself to screen reader accessibility. Flash content is time-based and often changes over time. HTML content is more or less static. The static nature of HTML allows a screen reader to access the HTML content in a linear fashion. When a visual user accesses a Flash movie, he or she visually scans the contents of the movie and focuses directly on the important content or functionality. A screen reader user cannot "scan" through Flash content and can only access it in a linear manner and in the order the Flash developer has chosen to present it. Flash's timeline and programming language (ActionScript) allow constantly changing, dynamic, updating objects to animate, move, disappear, or duplicate themselves whenever the Flash developer chooses (or even randomly if they want). Because Flash content is usually constantly changing, this limits the ability of the screen reader to read the content in a sufficient or timely manner.

Important

At this time, only up-to-date versions of the JAWS, Window-Eyes, and IBM Home Page Reader screen readers that are using the Flash 6+ player can provide even marginal access to Flash content. Their support for Flash accessibility in the authoring tool, the player, and screen readers leaves much to be desired. In order to be fully accessible to screen readers, the content must have been developed for accessibility using Flash MX or newer.

Despite the problems Flash can introduce for screen reader users, there are accessibility techniques that can be implemented to make Flash more accessible. Microsoft Active Accessibility (MSAA) is used to send content from the Flash player to the screen reader. MSAA is a Microsoft technology that currently only works with Internet Explorer on Windows computers that have the Flash player version 6 or newer installed. Although most assistive technologies tend to be implemented on Windows with Internet Explorer, screen readers written for other platforms cannot take advantage of Flash's accessibility features. There are several screen readers that run on other operating systems. Someone with a motor disability may not be using Internet Explorer. Also, your end user may not have the most recent version of the Flash player installed. In fact, they may not have Flash installed at all. Many screen reader users have disabled Flash content because of the vast amount of inaccessible Flash content that is present on the web.

In short, you must conduct user testing with a variety of end users, platforms, browsers, and assistive technologies to ensure that your Flash content is accessible to the widest array of users. You may need to re-evaluate your use of Flash. Perhaps another technology may work better. Because the vast majority of Flash content cannot be made natively accessible, it will probably be vital for you to provide a non-Flash alternative for those that cannot or choose not to access your Flash multimedia.

Screen Reader Accessibility

There are three ways in which the Flash content can be made accessible to screen reader users:

  1. Make the Flash content natively accessible to the screen reader.
  2. Make the Flash content self-voicing, eliminating the need for the screen reader.
  3. Provide an accessible alternative to the Flash content.

By making your Flash movie self-voicing, you remove the need for the screen reader. In essence, you are taking over the role of the screen reader by conveying audibly any content that is presented visibly within the Flash movie. The screen reader user should be alerted that the program is self-voicing so the screen reader can be paused while the Flash movie presents the audio content. Any important content that is conveyed visibly must also be provided through the audio. You can relate this to listening to a sports event on the radio - although you cannot see the action, the commentators are providing all of the important details through the audio. You may want to provide a self-voicing movie as an alternative to a non-voicing Flash movie, or provide an option to turn self-voicing functionality on or off. Remember, if you are conveying any content audibly, that is not apparent from the visible display, then you must provide captions for the deaf and hard of hearing. The movie must also be made keyboard accessible.

It is also important to provide an equivalent alternative to the Flash movie itself. This should only be done when the movie itself can in no other way be made accessible. It may be hard to justify that an HTML tutorial is equivalent to an interactive multimedia Flash tutorial. The key is to make the alternative content equivalent, not necessarily text-only. Instead of providing a text-only page with long running lengths of text, the equivalent should be a well-formatted and accessible web page with images, icons, paragraphs, and color. Just because someone accesses your equivalent alternative, doesn't mean that they are blind and don't care about what the page looks like or how it functions. Often, the alternative can be within the same page as the Flash movie itself. In some cases, you can give the user the option of turning on and off Flash content.

WebAIM is an initiative of:
Center for Persons with Disabilities (CPD) Utah State University