Section 508 Accessibility Assessments: Using Screen Readers

Screen readers are a commonly used assistive technology, and it is important to understand the basics of these software applications. Using one or more of the following tools can help to ensure compliance with Section 508 of the Rehabilitation Act forexisting and future designs.

Screen readers are applications that are predominantly – but not solely – used by the visually impaired population. They are text-to-speech applications, meaning that they convert all of the textual information on a webpage or in a computer program into simulated speech. They also provide keyboard shortcuts to make navigation possible without use of the mouse, which is a tool that requires good vision and strong fine motor skills. These, along with a variety of other features, allow users to access the computer just as a non-impaired individual would.

There are many screen readers available, though JAWS (Job Access With Speech) is,by far, the mostwidely used. Popular readers include:

Software / Provider / Platform / License
JAWS / Freedom Scientific / Windows / Commercial
Narrator / Microsoft / Windows / Included with Windows
Window-Eyes / GW Micro / Windows / Commercial
NonVisual Desktop Access (NVDA) / NV Access / Windows / Open Source
VoiceOver / Apple / Mac / Included with Mac OS 10.4 and later
ZoomText / AI Squared / Windows / Commercial
System Access/SAToGo / Serotek / Windows/Internet-based / Commercial/Free online
Supernova / Dolphin / Windows / Commercial
Hal / Dolphin / Windows / Commercial

Along with traditional screen readers, there are also other tools that sighted developers can utilize to examine web-based accessibility issues that directly affect users of screen readers. A few popular tools include:

Software / Provider / Platform / License / Notes
Fangs Screen Reader Emulator / Firefox / Firefox Add-on / Free / “…renders a text version of a web page similar to how a screen reader would read it”
Web Developer / ChrisPederick / Firefox, Flock, or Seamonkey / Free / “…adds a menu and a toolbar to the browser with various web developer tools [such as turning off style sheets]”
Web Accessibility Toolbar / Vision Australia / Windows & IE 5-7 (1.x release) orIE 8 (2.x release) / Free / “…developed to aid manual examination of web pages for a variety of aspects of accessibility”
aDesigner / Eclipse ACTF (Accessibility Tools Framework) / Windows / Free / “…disability simulator that helps designers ensure that their content and applications are accessible and usable by the visually impaired”
Wave / WebAIM / Internet-based / Free / “…free web accessibility evaluation tool”

All of these differ in their functionality and features, but all can provide very important insight to the quality of web usage for peoplewith impairments. Fangs is a Firefox browser add-on that converts websites to the text that would be read by a screen reader, allowing developers to see the order of items and menus. The Web AccessibilityToolbar is a another powerful add-on, but for Internet Explorer, that allows users to disable CSS, toggle images with their alt text, examine color contrast, magnify the screen, and much more. A very similar accessibility toolbar program called Web Developer is available for Firefox (as well as a few other browsers). The ACTF aDesigner is a standalone application that acts as a two-window browser. Users can load a webpage and then convert it to simulate low vision or to completely strip it of its style sheet to see how it would be read with a screen reader. The latter of these two capabilities also provides information about the amount of time it takes a screen reader to get to certain points in the page and shows where inter-page links lead. Lastly, Wave is a web-based tool that helps to reveal possible accessibility issues with a particular web pageby use of various graphical icons that explain the nature of the compliance or warning.

Section 508 Accessibility Assessment Procedures

The following procedures are broken into two sections: one for Software Applications and Operating Systems and one for Web-based Intranet and Internet Information and Applications. These are the same categories that are used in the Section 508technical standards.

Before using JAWS to perform accessibility evaluations, it is important to be aware of a few things and to understand a set of basic key commands.

  • Make sure NumLock is turned off. JAWS uses thenumber pad keys for a variety of functions.
  • If using JAWS for internet evaluations, use Internet Explorer as your primary browser; JAWS is configured to work best with IE.
  • Pages often will notauto-scroll when using JAWS, so non-visible elements may be read.

Internet Explorer Commands: General Screen Reading

Command / Key Combination
Say all / INSERT+DOWN ARROW
Say current line / INSERT+UP ARROW
Say previous/next word / INSERT+RIGHT ARROW/LEFT ARROW
Say previous/next line / UP ARROW/DOWN ARROW
Previous/next character
Rewind/fast forward (in Say All mode) / RIGHT ARROW/LEFT ARROW
Increase/decrease rate of speech during Say All / PAGE UP/PAGE DOWN
Stop reading / CTRL
Page refresh/hard page refresh (a good way to start over if you lose your place in a page) / F5/SHIFT+F5

Internet Explorer Commands: General Webpage Navigation

Command / Key Combination
Help with current element / INSERT+F1
Move forward/backward through links and form elements / TAB/SHIFT+TAB
List of links / INSERT+F7
Next button / B
Next form / F
List of forms / INSERT+ F5
Next graphic / G
Next heading / H
List of headings / INSERT+F6
Headings level 1 thru 6 / 1-6
Next item in a list / I
Next list / L
Skip over links / N
Next paragraph / P
Next table / T
Navigate in reverse order
(This works for all the single-letter quick keys.) / SHIFT+[QUICK KEY]
List a particular element
(This works for the B, G, L, P, and T quick keys.) / CTRL+INSERT+[QUICK KEY]
Top of Page / CTRL+HOME
End of Page / CTRL+END
Address Bar / ALT+D, or F6

Internet Explorer Commands: Table Navigation

Command / Key Combination
Next/previous table / T/SHIFT+T
Next/previous row / WINDOWS KEY + DOWN ARROW/UP ARROW
Next/previous column / WINDOWS KEY + RIGHT ARROW/LEFT ARROW
Navigate between cells / CTRL+ALT+UP/DOWN/LEFT/RIGHT
Read row/column / WINDOWS KEY+COMMA/PERIOD
Read row and column headers for current cell / CTRL+ALT+5

Internet Explorer Commands: Form Navigation

Command / Key Combination
Enter forms mode / ENTER
Exit forms mode / + (on num pad)
List form fields / INSERT+F5
First form field / INSERT+CTRL+HOME
Next/previous form field / F/SHIFT+F
Next/previous form element / TAB/SHIFT+TAB
Select and deselect check boxes / SPACEBAR
Select radio buttons or elements in combo boxes / UP/DOWN ARROW

Section 508 Standards Related To Screen Readers

This section lists some Section 508 standards that are related to screen readers. These are the primary guidelines for which screen readers can be of assistance in accessibility assessments. Tips on assessing each guideline are also provided

Software Applications and Operating Systems (Section 508, 1194.21)

1194.21(a)When software is designed to run on a system that has a keyboard, product functions shall be executable from a keyboard where the function itself or the result of performing a function can be discerned textually.

  • The menus in most Windows programs can be accessed by using the ALT key. When ALT is pressed, the File menu (or some equivalent) will be highlighted and the arrow keys can be used to navigate the menus. Software such as the new Microsoft Office Suite will also show the quick keys associated with each command, allowing for easy visual keyboard navigation. When using these menu utilities, JAWS will announce that the menu is active and then will speak the currently highlighted command. By moving through these menus, one can tell if all areas are accessible and logically ordered for a non-visual user.
  • Alternately, in some software applications the use of the TAB key (along with modifiers like SHIFT and CTRL) is the primary navigation method to move through and evaluate display elements. Print drivers, which are basically multi-tab forms, are a great example of this type of application.

1194.21(d)Sufficient information about a user interface element including the identity, operation and state of the element shall be available to assistive technology. When an image represents a program element, the information conveyed by the image must also be available in text.

  • Much of this standard can be examined using the techniques outlined in 1194.21(a). The most important aspect of 1194.21(d) is the usage of graphical icons for program controls. When listening with JAWS, make sure that these elements are properly identified and that their usage is clear.

1194.21(l)When electronic forms are used, the form shall allow people using assistive technology to access the information, field elements, and functionality required for completion and submission of the form, including all directions and cues.

  • Although most forms are visually understandable, the visual layout is often not indicative of the reading order that a screen reader will use. Although there is much that can be done in code to make forms clear, it is always important to TAB through the forms to see that the reading order is logical and, especially, that form labels are associated with their respective form elements. It is also important to check that selection boxes, if present, are correctly handled and presented in a logical fashion.
  • Instructions or other information (maximum and minimum allowed values for a numeric entry field, for example) that are visible but are not read by the screen reader is a common problem that is covered by this standard. There are also situations where the relationship between controls is evident visually (for example, by proximity) but those relationships are not communicated by the screen reader.

Web-based Intranet and Internet Information and Applications (Section 508, 1194.22)

While many of these standards can be evaluated by examining the underlying HTML code, it is important to double check compliance using a screen reader or multiple screen readers due to the way that different applications process the given information.

1194.22(a) A text equivalent for every non-text element shall be provided (e.g., via "alt", "longdesc", or in element content).

  • Using JAWS, the“G” quick key can be used to cycle through graphics. If alt text is provided, then JAWS will read it, otherwise file names and web locations may be read. JAWS will jump to different locations on a page when cycling through graphics, helping a sighted user to better see which graphic the reader is currently focused on. However, there can be difficulties in following where JAWS is reading if there are many images present.

1194.22(d) Documents shall be organized so they are readable without requiring an associated style sheet.

  • The simplest way to check compliance for 1194.22(d) using JAWS is to start from the top of the page (CTRL+HOME) and then prompt JAWS to “Say All” (INSERT+DOWN ARROW). You can then listen to the page as it progresses and decide whether or not the reading order is understandable, skipping large chunks using navigation keys as needed. Another method to check compliance for this standard is to list the headings to see that they are structured in the intended order.
  • This standard also addresses a problem that sighted users may encounter. If usershave style sheets disabled (for example, if the page is rendered in a text-only browser), then viewing the page with the style sheet disabled is a good way to see what the page “really” looks like, especially when the style sheet is used for layout effects. Disabling style sheets is made easy by using the Web Developer, Web Accessibility Toolbar, or aDesigner applications.

1194.22(g) Row and column headers shall be identified for data tables.

  • To examine the accessibility of a table using a screen reader, the most methodical way is to check an entire single row and an entire single column to see whether or not the headers associated with each cell exist and make sense. To do this, click in the desired cell, which JAWS will then read. Then press CTRL+ALT+5 to tell JAWS to read the row and column headers for that cell. If what is read is correct, then proceed to the next cell. This is a much faster and more organized method than listening to the entire table, which can be a difficult task for novice screen reader users.
  • If inspecting the source code for the table is an option, that is also a very good way to check to see if the table is properly defined.

1194.22(h) Markup shall be used to associate data cells and header cells for data tables that have two or more logical levels of row or column headers.

  • Testing this standard with a screen reader is very much like testing 1194.22(g), except that you will want to test at least one cell from each row that has multiple levels of headers. Assuming the table is properly defined, the speech output should announce each of the header levels in the order of their hierarchy.
  • If inspecting the source code for the table is an option, that is also a very good way to check to see if the table is properly defined.

1194.22(l) When pages utilize scripting languages to display content, or to create interface elements, the information provided by the script shall be identified with functional text that can be read by assistive technology.

  • Use of scripting, when not handled correctly, can also create many barriers for screen reader users. Although there are no overarching methods to solve the myriad possible accessibility issues that can be created by scripting, there are a few general rules to stick to: ensure that all scripts are device independent (can be navigated with both a keyboard and mouse), and that all elements are identifiable with a screen reader.
  • To best check compliance using JAWS, it is easiest to TAB to the script elements in question and try to navigate them with the keyboard. While navigating, listen to see if all elements are identified and whether or not alerts and scripted messages are read and ordered in a logical fashion.
  • Lastly, it is important to ensure that scripted pages do not become unusable if scripting is disabled. When links (or sometimes entire pages) are generated by scripts, the information the screen reader needs to provide to the user can be lost if the user has scripting disabled. Scripting can be turned off in the browser preferences, or by use of Web Developer or the Web Accessibility Toolbar.

1194.22(n) When electronic forms are designed to be completed on-line, the form shall allow people using assistive technology to access the information, field elements, and functionality required for completion and submission of the form, including all directions and cues.

  • Although most forms are visually understandable, the visual layout is often not indicative of the reading order that a screen reader will use. Although there is much that can be done in HTML code (mainly using <label> tags) to make forms clear, it is always important to TAB through the forms to see that the reading order is logical and, especially, that form labels are associated with their respective form elements. It is also important to check that selection boxes, if present, are correctly handled and presented in a logical fashion.
  • Instructions or other information (maximum and minimum allowed values for a numeric entry field, for example) that are visible but are not read by the screen reader is a common problem that is covered by this standard. There are also situations where the relationship between controls is evident visually (for example, by proximity) but those relationships are not communicated by the screen reader.

1194.22(o) A method shall be provided that permits users to skip repetitive navigation links.

  • Many times pages will have a link at the very top that will read something similar to “Jump to page content.” This link is often hidden because it is only intended for users of screen readers. Upon opening a page, you can immediately press TAB to begin cycling through the available links, listening for a skip navigation link. Hitting INSERT+F7 will provide a list of the available links on the page, making that task much less tedious.

Functional Performance Criteria (Section 508, 1194.31)

1194.31(a) At least one mode of operation and information retrieval that does not require user vision shall be provided, or support for assistive technology used by people who are blind or visually impaired shall be provided.

  • In addition to the specific guidelines listed above, the Section 508 Functional Performance Criteria provide the bottom line: applications and web pages must be able to be utilized without vision, natively or through the use of assistive technology.

Information, Documentation, and Support (Section 508, 1194.41)