W3C   WD-WAI-UA-BROWSER-0518

WAI Accessibility User Agent Guidelines:
Browser User Interface

W3C Working Draft     18-May-1998

Editor:
Jon Gunderson, University of Illinios at Urbana/Champaign
 
Please see the Acknowledgements section of the Appendix for a full listing of contributors.

Status of this document

This is a W3C Working Draft for review by W3C members and other interested parties. It is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to use W3C Working Drafts as reference material or to cite them as other than "work in progress". This is work in progress and does not imply endorsement by, or the consensus of, either W3C or members of the WAI User Agent (UA) working group.

This document has been produced as part of the W3C WAI Activity, and is intended as a draft of a proposed recommendation for how to improve browser accessibility.  The goal of the WAI-UA working group is discussed in our charter. A list of the current working group members is available.

Abstract

This document is a list of browser features that browser developers should follow in order to make their browser technology more accessible to persons with disabilities. Following the list of guidelines is a checklist that browser developers can use to identify and prioritize accessibility features. This document is part of a series of accessibility documents published by the Web Accessibility Initiative.

Comments

Please send detailed comments on this document to w3c-wai-ua@w3.org. Public comments about the WAI author guidelines can  also be sent to this mailing list.


Rating and Classification

Each guideline is accompanied by a rating that describes its importance and scenarios about how the :

[Priority 1]
Very important, otherwise it will be impossible for one or more groups of users to access this information on the page, or it will significantly improve the access to WWW pages designed without accessibility considerations.
[Priority 2]
Important, otherwise it will be difficult for one or more groups of users to access this information on the page, or it will improve the access to WWW pages designed without accessibility considerations.
[Priority 3]
Makes access to information on the page easier, but not critical for access.

Scenarios
Short descriptions of how the changes impacts persons with different types of disabilities on common WWW tasks and how it compensates for WWW pages that are not designed for accessibility.
Implement Ideas
Considerations, options and ideas that developers can use for implementing a particular access feature.
Test Pages
Self explanitory test pages that can be used by browser developers to determine if a browser complies with a specific guideline.

Table of Contents

1. Presentation Adjustability

A. Default Browser Display Style

B. Ignore Page Formatting Specifications

C. Alternative Representations of Images

D. Alternative Representations of Movies and Video

E. Alternative Representations of Imbedded Applications

F. Alternative View of Document

2. Orientation Information

A. Maintenance of Document View and Focus

B. Changing Frame Focus

C. Document summary information

D. Element Identification

E. Document TITLE in title line

F. CSS Support

3. Navigation Commands

A. Sequential Navigation

B. Hierachical Navigation

C. Direct Navigation

D. Frame Navigation

E. Focus Indication

F. DHTML Events

G. Inter-page Navigation

4. Visibility of Accessibility Features

A. Menu Commands

B. Documentation

5. Compatibility with 3rd Party Assistive Technology

A. Standard OS Controls/Menus/Dialog boxes

B. Microsoft Active Accessibility for Windows 95/NT

C. SUNSoft Java Accessibility API for Java


1. Presentation Adjustability

A. Default Browser Display Style

  1. [Priority 1]
    User can adjust the default font face used by the browser. Persons with visual impairments and learning disabilities can adjust the font to the style characteristics that is best for them to view WWW pages.
  2. [Priority 1]
    User can adjust the default font size used by the browser. Persons with visual impairments and learning disabilities can adjust the font to the size that is best for them to view WWW pages.
  3. [Priority 1]
    User can adjust the default foreground and background colors used by the browser. Persons with visual impairments and learning disabilities can adjust the display colors to the colors that are best for them to view WWW pages.
  4. [Priority 1]
    User can turn off background images
  5. [Priority 1]
    User can adjust the highlight foreground and background colors used by the browser. Persons with visual impairments and learning disabilities can adjust the display highlight colors used to indicate selections of text. Highlighted text is often used by third party assistive technologies to indicate what the user wants to read through speech output. Highlighted text can also be used by screen readers to indicate the focus of what the user is trying to read. Some screen readers are sensitive to the highlight colors.
  6. [Priority 1]
    Keyboard command to switch between default browser presentation and current user preferences.
  7. [Priority 1]
    Implement the important rule to allow users to override author CSS specifications.
  8. [Priority 1]
    Use available operating system colors as the default colors and use available operating system flags for automatically setting the browser in a high contrast display mode.
  9. [Priority 2]
    Support Aural Cascading Style Sheets for the auditory presentation of WWW documents.
  10. [Priority 2]
    User can specify a Cascading Style Sheet to be used in cascading order specified in CSS2 after the document style sheets have been loaded. The style sheet is an external linked style sheet is applied to all documents viewed. Users can define a style sheet to meet the needs of their particular capabilites and preferences. Browsers should support auditory style sheets for presenting information auditory, visually or both.
  11. [Priority 3]
    User can specify an external file to set default browser style. This is very useful in public access computer environments where there are multiple user of one computer. The user can quickly adjust the browser to their preferences.

B. Ignore Page Formatting Specifications

  1. [Priority 1]
    A user selectable option is available to turn off font face information specified in the page being rendered by the browser. The default font face is used to render the page text. This feature maintains users with visual impairments and learning disabilities font face preferences and are not overridden by page font face specifications.
  2. [Priority 1]
    User selectable option is available to turn off font size information specified in the page being rendered by the browser. The default font size is used to render the page text. This feature maintains users with visual impairments and learning disabilities font size preferences and are not overridden by page font face specifications.
  3. [Priority 1]
    User selectable option is available to turn off color information specified in the page being rendered by the browser. The default colors for text and highlight are used to render the page text. This feature maintains users with visual impairments and learning disabilities font size preferences and are not overridden by page font face specifications.
  4. [Priority 1]
    User selectable option is available to turn off linked, embedded and inline specified cascading style sheets (CSS) information. CSS font, size, color and positioning information would be ignored in the rendering of the page. The page would render using the default browser options or a user specified style sheet.

C. Alternative Representations of Images

  1. [Priority 1]

    User selectable option is available to turn off the display of images using the IMG tag and display descriptive text in place of the image. There are three potential sources of descriptive text information: ALT attribute, TITLE attribute and NAME attribute if the image is part of a Anchor. The priority of presentation is the ALT, TITLE and then NAME text. If none of these sources is available the name of the file should be used as the alternative description. The entire text should be rendered no matter what the source of the text or the dimensions specified for the original image.

    Usage of ALT and TITLE:
    ALT: Image description.
    TITLE: Tool tip

  2. [Priority 1]

    When user selectable option to display images is turned off, OBJECT tags being used to specify images should not render the image, but instead should display descriptive text information about the image. The inner most text of the OBJECTis considered the alternative text for the OBJECT and in the absence of text the OBJECT filename should be used. The descriptive text should be fully rendered, even if the dimensions of the image are smaller than the dimensions specified for the image in theOBJECT.

  3. [Priority 1]
    Images using the IMG tag which include the LONGDESC attribute should display a D-Link to the LONGDESC URL when the user selectable option for image presentation is off. The D-Link would be presented as part of the text description (discussed earlier in this section). Keyboard commands are required to locate and select the presentation of LONGDESC attribute information. In addition the LONGDESC URL could also be selected through mouse commands for able-bodied users or persons with LD who prefer to use a mouse.

D. Alternative Representations for Video, Movies and Annimations

  1. [Priority 1]
    User selectable option is available to turn on audio descriptions of videoes, movies and annimations for videos.
  2. [Priority 1]
    User selectable option is available to turn on closed captioning of video, images and annimations.

E. Alternative Representations of Imbedded Applications

  1. [Priority 1]
    User option to turn off the presentation of imbedded applicaitons in a document. The OBJECT and APPLET (depreciated) tags can be used to imbed applications within a document. Users with some disabilities cannot use the applications, but need to know the existance, purpose or function of the application. When this option is enabled the alternative text for the application will be rendered. In the case of the OBJECT tag this is the text in the inner most object structure. In the case of the APPLET tag the ALT text should be rendered.

    If an OBJECT or APPLETcould not be loaded a message should appear reporting the reason why the object could not be loaded (i.e. missing object, server not ready...).

F. Alternative Views of Document

  1. [Priority 2]
    User has has the option to view information from selected tags in the currently loaded document. This provides a means for a user to quickly identify tags of interest on a page without needing to scroll through the entire page and in some cases not being able to identify tags of interest due to the lack of tag information available on the screen or through assistive technology. For example headers (H1-H6) would be a common alternative view for some one to quickly view the major topics within a document. A keyboard/menu command is needed to change between the full and outline view of the document. Switching between the outline and full view would maintian a synchronized view between the two views of the document. The tags that are displayed in the outline view should be selectable by the user and be primarily block level tags.
  2. [Priority 2]
    Elements generated in the outline view become links to the corresponding elements in the original document. The user could use the browser to navigate the outline view links and then move directly to the item in the orginal document by selecting the link.
  3. [Priority 2]
    Text only view of page. All non-text information is surpressed. Alternative text is used for images and objects. Similar to the current version of UNIX LYNX.
  4. [Priority 2]
    User option to unwrap table views. The first line would give the size and name of a table. Each cell would have one line with the table cell row and column coordinates, which would be followed by the contents of the cell.

2. Orientation Information

A. Maintenance of Document View and Focus

  1. [Priority 1]
    Maintenance of document view and element focus (currently only links and form controls for many browsers) as a user moves between documents.
  2. [Priority 1]
    Element focus follows changes in page view. When the user changes the view of a page the element focus moves to that view. So if the user after changing the view uses keyboard commands to move or select the focused element the view does not abruptly change to another portion of the document with the focus.
  3. [Priority 1]
    Eement focus follows changes in page view. When the user changes the view of a page the element focus moves to that view. So if the user after changing the view uses keyboard commands to move or select the focused element the view does not abruptly change to another portion of the document with the focus.

B. Frame Focus

  1. [Priority 1]
    When selecting a link in one frame that changes the document loaded in another currently visible frame, the focus is required to go to the new frame.

C. Document Summary Information

  1. [Priority 1]
    Brief document summary information is displayed on page loading on status. Summary information includes information on the size of the document, the number of structural elements related to
  2. [Priority 2]
    Brief document summary information is displayed on status line on user command.
  3. [Priority 2]
    Extended document summary information is displayed on user command.

D. Element Identification

  1. [Priority 1]
    Element and DHTML event identification on status line on focus/mouse over events.

E. Document TITLE in title line

  1. [Priority 2]
    Document TITLE found in the HEAD section of the document should appear on a title bar, if a title bar or other similar convention exists in the operating system.

F. CSS Support

  1. [Priority 1]
    Support the :before and :after pseudo-elements of CSS2 recommendation. Users using speech output can include identifiers in the document to indicate the type of element being spoken.
  2. [Priority 2]
    Support the Dynamic outlines: the 'outline' property of CSS2 recommendation. Support of this feature allows the user to have greater control over how element focus is rendered visually.

3. Navigation and Control

A. Sequential Navigation

  1. [Priority 1]
    Keyboard commands to sequentially move focus between frames, links, images with LONGDESC and controls on a page.

B. Hierachical Navigation

  1. [Priority 2 or 3]
    Keyboard commands to navigate a hierachical representation of the document. The focus of the hierachy would be defined using the oultine property of CSS2 or in a representation compatible with third party assistive technology. The outline can be expanded or contracted based on keyboard and pointing commands from the user. The hierachical representation would include block level structures.

C. Direct Navigation

  1. [Priority 2]
    Keyboard commands to move focus directly to links and controls on a page. This feature is designed to assist in moving a user directly to a known link (usually by link name) and to allow a user to identify links that contain a list of keywords the user is interested in.
  2. [Priority 2]
    Keyboard commands to move focus directly to non-link and non-control elements in a document.
  3. [Priority 1]
    Keyboard commands to move focus between cells in a table. The ability to highlight a cell with a pseudo focus using outlines feature of CSS2 specification is important for this feature to benefit users with disabilities.

D. Frame Navigation

  1. [Priority 1]
    Keyboard navigation commands to switch focus between frames. Using the keyboard to move frames should maintain relative position and focus in each of the frames. The user therefore cannot lose their place just by toggling through the frames.

E. Focus Indication

  1. [Priority 1]
    Salient visual focus indication for users with low vision to identify the element in the current view that has the focus. The focus indication should be adjustable by the user, so they can customize it to meet their own capabilities.
  2. [Priority 1]
    Focus indication for third party assistive technology to identify the element the user is currentlt viewing.
  3. [Priority 1]
    Support CSS element focus indication.

F. Dyanmic HTML Events

  1. [Priority 1]
    The ability to identify elements with dynamic HTML events through markings on the visual display and indications to 3rd party assistive technology.
  2. [Priority 1]
    Keyboard commands to view a list of Dynamic HTML Events and the associated elements and to select an event to execute from the list.

G. Intra Page Page Navigation

  1. [Priority 1]
    Keyboard commands to view a history list of the documents the user has transversed and select documents from the list.

4. Visibility of Accessibility Features

A. Menu Commands

  1. [Priority 1]
    Display keyboard shortcut navigation commands in menus. If the user interface of the operating system supports placing keyboard shortcut keys in menu items,
  2. [Priority 2]
    If menu options exist for element navigation that menus also be used to display summary information for elements associated with that menu. For example if a browser has a menu item labled "Headers" and has the ability to provide navigation bewteen header elements. The display of headers menu could be in the format of "nn Headers" is the number of headers in the current document. The sub menu items would include Next Header, Previous Header, List of All Headers, and a dynamic list of the first 10 headers in the document.

B. Documentation

  1. [Priority 1]
    Description of accessibility features are available in on-line documentation. The on-line documentation needs to inlcude information on features that can be used to improve the usability of the browser by persons with disabilities and provide a list of all keyboard commands. The search index should include references to key words like "disability", "handicapped", "accessibility" and "impairment".
  2. [Priority 1]
    Description of accessibility is available in print documentation. If print manuals are distributed with the browser, there should be information about accessibility information in the print manuals. The table of contents and the index should have entries that clearly identify disability access features.
  3. [Priority 1]
    Print and on-line information should be available in alternative formats for people with print impairments. This includes large print, audio tape and Braille.

5. Compatibility with 3rd Party Assistive Technology

A. Standard OS Controls/Menus/Dialog boxes

Using standard rather than custom controls in the designing browser applications increases the accessibility of the application. Third party assistive technology developers are more likely able to access standard controls than custom controls. If you must use custom controls review them for accessibility or check for controls that support Active Accessibility or the SUN Soft Accessibility API (see following sections).

B. Microsoft Active Accessibility in Windows 95/NT versions.

When developing new applications for Windows 95/NT build into the specifications and design active accessibility compatibility. This provides 3rd party asssistive technology with important information for accessibility about your program for persons using 3rd part assistive technology. More information on active accessibility can be found at Microsoft WWW site on Active Accessibility.

C. SUNSoft Java Accessibility API in Java Code

When developing new applications using SUNSoft Java technology build into the specifications and design the use of the Java Accessibility API. This provides 3rd party asssistive technology with important information for accessibility, so persons with disabilities can use assistive technology to more efficiently access your programs. More information on Java Accessibility API can be found at Java Accessibility Utilities.


Acknowledgements

WAI Markup Guidelines Working Group Chair:
Jon Gunderson, University of Illinois at Urbana/Champaign
Staff contacts:
Judy Brewer and Daniel Dardailler
 
In addition we would like to thank the following people who have contributed through review and comment.
James Allen, Irene Au, Kitch Barnicle, Kevin Carey, Wendy Chilstrom, Chetz Colwell, Neal Ewers, Geoff Freed, Larry Goldberg, Jon Gunderson, Chris Hasser, Phill Jenkins, Leonard Kasday, George Kerscher, Josh Krieger, Greg Lowney, Scott Luebking, William Loughborough, Charles McCathieNevile, Masafumi Nakane, Charles Opperman, Mike Paciello, David Pawson, Helen Petrie, David Poehlman, Michael Pieper, Jan Richards, Greg Rosmaita, Liam Quinn, T.V. Raman, Robert Savellis, Constantine Stephanidis, Jim Thatcher
, Jutta Treviranus, Steve Tyler, Gregg Vanderheiden, Jaap van Lelieveld, Jon S. von Tetzchner, Ben Weiss, Evan Wies, Chris Wilson, Hank Wittingen, Tom Wlodkowski

If you have contributed to the UA guidelines and your name does not appear please contact the editor to add your name to the list.

 


References

HTML 4.0 Recommendations.

W3C WAI Page Author Guidelines