MOZILLA/FIREFOX ACCESSIBILITY EXTENSION
Presenter(s)
Jon Gunderson
UIUC
1207 S. Oak Street
Champaign IL 61820
Day Phone: 217-244-5870
Fax: 217-33-0248
Email: jongund@uiuc.edu
Presenter #2
Richard Schwerdtfeger
IBM
Austin TX
Email: schwer@us.ibm.com
The Mozilla/Firefox Accessibility Extension [1] provides navigation,
styling and rendering features that are important in improving access to web
content for people with disabilities and testing web resources for functional
accessibility by developers.
Web browsers play a critical role in web accessibility and their features
play a major role in defining the web content
accessibility techniques available to web developers. The
Mozilla/Firefox Accessibility Extension [1] provides navigation,
styling and rendering features that are important in improving access to
web content for people with disabilities and testing
web resources for functional accessibility by developers. The
features are based on the W3C User Agent Accessibility
Guidelines [2]. The extension also implements features to support the
new Dynamic HTML accessibility features [3] being
developed by the W3C Protocols and Formats group.
More information at:
http://cita.disability.uiuc.edu/software/mozilla
Mozilla/Firefox Accessibility Extension
The Mozilla/Firefox accessibility extension provides additional features to
the Mozilla and Firefox browsers through a
toolbar, menu options and keyboard shortcuts. The importance of
browsers features for web accessibility can be illustrated
through the Section 508 [4] web accessibility requirement of skipping
navigation bars. Web accessibility resources and
e-mail lists associated with web accessibility are clogged with a variety
of techniques to implement the “skip navigation”
feature, with many of the techniques not even accessible to the people the
requirement was designed to help. If Internet
Explorer would have a keyboard shortcut for header (H1-H6) navigation built
into it, like the Opera browser, there would not
have been all these techniques and people would have been encouraged to use
headers for structure. Instead we got a variety
of techniques that are confusing and often not accessible to people with
disabilities, and the use of headers is typically
not mentioned in most of these techniques.
Through implementation of the W3C User Agent Accessibility Guideline [2]
requirements the Mozilla/Firefox accessibility
extension serves as a tool to help people with disabilities access web
content and allow developers to functionally test
their web resources based on content conforming to the W3C Web Content
Accessibility Guidelines [5] and Section 508
guidelines[4]. The extension is also being used as a test platform
for the new W3C Dynamic Accessible Web Content Roadmap
[3] being developed by the W3C to improve the accessibility features of web
applications.
Navigation
One of the main problems with popular current browsers like Internet
Explorer and Mozilla/Firefox are their limited ability
to navigate the structural elements of HTML. In the case of Internet
Explorer (IE) the structural navigation features have
appeared in assistive technologies like JAWS and WindowEyes screen readers.
If structural navigation features would have
been built into IE then assistive technologies would not have had to create
them and then all users would benefit, including
people with disabilities, especially those who do not use screen readers.
Other mainstream browsers like Opera do have some
built-in navigation features like list of links and keyboard header
navigation, so not all browser developer shared in the IE
navigation model.
The benefit of the Mozilla/Firefox browsers is their ability of their
features to be easily extended using Javascript, XUL
and the Geko Document Object model (DOM). The extension uses these
technologies to add additional navigation and keyboard
features for supporting HTML structural markup. There are two basic types
of navigation: sequential navigation using keyboard
short cuts to move keyboard focus to the next and previous structural
element in the document and the other is through a
“enumerated list” of the text content associated with the structural
element. For example with header there are keyboard
commands to go to move keyboard focus to the next and previous header
elements in a web resource. There is also a list of
header feature that lists all the headers in a dialog box with the
associated heading level, heading text and sequence number
in the document. The user can then sort the list by document order,
heading level or alphabetically by the heading text. As
the user moves through the list box the corresponding header in the
document is synchronously highlighted for the user to see
the header in the context of other content in the resource. The
implementation of the keyboard shortcuts is done in a way
that they can be customized by the user using the configuration features
built-in to Mozilla and Firefox. This allows users
to disable or move functions to other keys if they interfere with assistive
technologies or other extensions that they may
want to use.
IMAGE: list-of-headers.png
ALT TEXT: List of headers Dialog Box
Summary of navigation features
• Headers: Next header, previous header, list of headers
• Links: Next link, previous link, list of links
• Forms: Next form control, previous form control, list of form controls
• Navigation bars: Next navigation bar, Previous navigation bar, list of
navigation bars
• Fames: List of Frames
• Data tables: List of data tables, cell navigation
• Accesskeys: List of accesskeys
Text Descriptions of Images
The text description options allow users to easily turned images on/off,
replaced images with ALT text or to see a list of
all the images. The list of images option provide a means for
developers to easily scan through the images for proper alt
text. The “Open Long Description” button in the list dialog box
allows users to easily access the longdesc URL attribute
when defined by authors to access extended descriptions of images.
The ALT text replacement function goes beyond the
built-in in ALT text rendering built into Mozilla/Firefox, which
typically clips ALT text to the size of the graphical area
assigned to the original image. Unlike IE there is no override
of this clipping feature. The extension actually creates a
text node in the document object to provide full text styling and zooming
capabilities to the ALT text and also does not clip
the text off at the size of the image.
IMAGE: list-of-images.png
ALT TEXT: List of Images Dialog Box
Styling
The styling features allow the user to turn off author stylesheets and
inline styling. Users can also apply their own
stylesheet or turn on/off a built-in high contrast stylesheet. Users
can easily restyle content to their own needs and the
zoom toolbar buttons make the zoom features built-in to Mozilla more
visible to users. Developers can easily use the style
functions to see how their web resources translate to alternative
renderings or adapts to users increasing and decreasing
text size.
Dynamic HTML and Automation
The web is rapidly becoming the tool of choice for developing user
interfaces to software applications. The interoperability
of the web provides the opportunity to create software based services that
can be used on a wide range of operating systems
and browsers without the user needing to install and configure special
software on their local computer. As web applications
become more dynamic and interactive a new level of accessibility markup is
need to be able to semantically identify the
purpose, actions and relationships between elements in the user interface.
The W3C Protocols and Formats working group is
developing a set of W3C Recommendations to address the authoring and
browser features needed to make web applications more
accessible[3].
The Mozilla/Firefox extension supports these new specifications and
provides a tool that can be used for testing the
specifications for functional accessibility by people with disabilities.
The heart of the new specifications is the use of
the xhtml2::ROLE attribute to assign a semantic label to an element or an
element content container(i.e. DIV element). New
features in the W3C DOM support exporting state and property value
information to accessibility APIs like Microsoft Active
Accessibility[6] and the GNOME Accessibility API [7].
The Mozilla accessibility extension allows users to navigate a document
based on role types and to selectivity display
document sections. Interactive controls can be monitored for their
current state and their relationships to other elements
in a web interface. In addition to sequential navigation through the
keyboard and the “Table of Contents” function provide a
list of the elements with role assignments.
IMAGE: table-of-contents.png
ALT TEXT: Table of Content list box
Summary of current and planned features of dynamic html accessibility:
• Sequential navigation of primary and secondary content
• Table of Contents function
• Inclusion of navigation bars in the “List of navigation bars” dialog
• Hierarchical navigation of document structure
• Role and state dialog box monitoring functions
• Auto assignment and user override of keyboard shortcuts
Conclusions
The Mozilla/Firefox accessibility extension provides an accessibility tool
that can be shared by both users with disabilities
and developers to access and test the functional accessibility of web
resources. The use of the extension as a test for
dynamic html accessibility will provide important feedback to the W3C
Protocols and Formats working group on the functional
accessibility afforded in the “Dynamic Accessible Web Content Roadmap” [3].
References
[1] Mozilla/Firefox accessibility extension, http://cita.disability.uiuc.edu/software/mozilla
[2] Jacobs,
[3] Schwerdtfeger, R. (2005) Dynamic Accessible Web Content Roadmap, http://www.w3.org/WAI/PF/roadmap/
[4] Section 508 Electronic Information Technology Accessibility Standards,
http://www.access-board.gov/sec508/standards.htm
[5] Chisholm, W., Vanderheiden, G., Jacobs, I. (2000) W3C Web Content
Accessibility Guidelines, http://www.w3.org/TR/WCAG
[6] Microsoft Active Accessibility Resources,
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnanchor/html/accessibility.asp
[7] GNOME Accessibility API, http://developer.gnome.org/projects/gap/GNOME-Accessibility.html
Go to previous article
Go to next article
Return to 2006 Table of Contents