Web Accessibility: Web Standards and Regulatory Compliance
- Jim Thatcher
- Michael R. Burks
- Christian Heilmann
- Shawn Lawton Henry
- Andrew Kirkpatrick
- Patrick H. Lauke
- Bruce Lawson
- Bob Regan
- Richard Rutter
- Mark Urban
- Cynthia D. Waddell
Web Accessibility: Web Standards and Regulatory Compliance
Copyright © 2006 by Jim Thatcher, Michael R. Burks, Christian Heilmann, Shawn Lawton Henry, Andrew Kirkpatrick, Patrick H. Lauke, Bruce Lawson, Bob Regan, Richard Rutter, Mark Urban, Cynthia D. Waddell
All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher.
ISBN-13 (pbk): 978-1-59059-638-8
ISBN-10 (pbk): 1-59059-638-2
Printed and bound in the United States of America.
Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark.
Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax 201-348-4505, e-mail orders-ny@springer-sbm.com, or visit www.springeronline.com.
For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley, CA 94710. Phone 510-549-5930, fax 510-549-5939, e-mail info@apress.com, or visit www.apress.com.
The information in this book is distributed on an "as is
" basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work.
The source code for this book is freely available to readers at www.friendsofed.com in the Downloads section.
Credits
- Lead Editor: Chris Mills
- Development Editor: Adam Thomas
- Technical Reviewers: Bruce Lawson, Gez Lemon
- Editorial Consultant: Bruce Lawson
- Editorial Board: Steve Anglin, Ewan Buckingham, Gary Cornell, Jason Gilmore, Jonathan Gennick, Jonathan Hassell, James Huddleston, Chris Mills, Matthew Moodie, Dominic Shakeshaft, Jim Sumser, Keir Thomas, Matt Wade
- Project Manager: Beth Christmas
- Copy Edit Manager: Nicole LeClerc
- Copy Editor: Marilyn Smith
- Assistant Production Director: Kari Brooks-Copony
- Production Editor: Laura Esterman
- Compositor: Dina Quan
- Artist: April Milne
- Proofreader: Elizabeth Berry
- Indexer: Michael Brinkman
- Interior and Cover Designer: Kurt Krames
- Manufacturing Director: Tom Debolski
- HTML Conversion/Styling: Patrick H. Lauke
To Jon B., who kept me going without even knowing it.
Shawn Lawton Henry
To my wife, Nongyow, and our kids, Marina and James, without whom life would be monochrome.
Bruce Lawson
Contents at a Glance
Contents
- Foreword
- About the Authors
- About the Technical Reviewers
- Acknowledgments
- Introduction
- Part 1: The Impact of Web Accessibility
- Chapter 1: Understanding Web Accessibility
- What Is Web Accessibility?
- An Example of Web Accessibility: Alt-Text
- Other Web Accessibility Examples
- Web Accessibility Is Essential for Equal Opportunity
- Benefits for People Without Disabilities
- Older People
- People with Low Literacy and Those Not Fluent in the Language
- People with Low-Bandwidth Connections and Older Technologies
- New Web Users
- Interdependent Components of Web Accessibility
- Description of Components
- Accessibility in the Implementation Cycle
- Compensating for Weak Accessibility Support
- Bringing Together the Components
- Authoring Tool Accessibility Guidelines (ATAG)
- Web Content Accessibility Guidelines (WCAG)
- User Agent Accessibility Guidelines (UAAG)
- Approaches to Web Accessibility
- Start Now
- Start by Understanding the Issues
- Involve People with Disabilities in Your Project
- Recruiting People with Disabilities
- Learning from People with Disabilities
- Understand the Relationship Between Accessibility and Usability
- Understand the Vital Role of Guidelines
- Accessibility Barriers on Existing Sites
- Focusing Evaluation
- Prioritizing Evaluation and Repairs by Area
- Prioritizing Repairs by Barrier
- Harmful Myths About Web Accessibility
- Myth: Text-Only Versions Are an Acceptable Solution
- Myth: Accessibility Makes Sites Dull and Boring
- Myth: Accessibility Is Expensive and Hard
- Myth: Accessibility Is the Sole Responsibility of Web Developers
- Myth: Accessibility Is for People Who Are Blind
- Myth: Evaluation Tools Can Determine Accessibility and Conformance to Standards
- Myth: Guidelines Are Not Sufficient for Accessibility
- Additional Benefits from a Business Perspective
- Technical Benefits
- Reduced Site Development and Maintenance Time
- Reduced Server Load
- Improved Interoperability
- Preparation for Advanced Technologies
- Financial Benefits
- Search Engine Optimization
- Increased Website Use
- Direct Cost Savings
- The Business Case for Web Accessibility
- Call to Action
- Summary
- Chapter 2: Overview of Law and Guidelines
- Evolution of Public Policy
- What Is the Problem?
- Complaints Filed Due to Inaccessible Web Design
- ADA Complaint Against the City of San José, California
- Maguire v. Sydney Organising Committee for the Olympic Games
- Direct Discrimination
- Unjustifiable Hardship vs. Remediation
- Effect of Addressing Access Early in Web Design 61
- Development of Accessible Web Design Guidelines and Laws
- Statutes and Regulations
- Industry Codes, Recommendations, and Good Practice
- W3C Web Accessibility Initiative (WAI)
- WCAG Priorities
- Section 508: U.S. Web Accessibility Standards
- Summary
- Chapter 3: Implementing Accessibility in the Enterprise
- Why Set Up an Accessibility Organization?
- Makeup of the Accessibility Organization
- Accessibility Organization Authority
- Accessibility Organization Scope, Goals, and Functions
- Accessibility Awareness
- Feedback
- Quality Assurance
- Milestones
- Technological Monitoring
- Periodic Objective Reviews
- Support
- Legal Matters
- Standards
- Public Representation
- Implementation Approach
- Initial Assessment (Where Are You?)
- Implementation Plan
- Handover to AO
- Summary
- Part 2: Implementing Accessible Websites
- Chapter 4: Overview of Accessible Technologies
- HTML and XHTML
- Cascading Style Sheets (CSS)
- JavaScript
- Flash
- Portable Document Format (PDF)
- Synchronized Multimedia Integration Language (SMIL)
- QuickTime, Windows Media, and RealPlayer
- Scalable Vector Graphics (SVG)
- Java
- XML and XSL
- Summary
- Chapter 5: Assistive Technology: Screen Readers and Browsers
- Screen Readers
- How Screen Readers Work with Web Pages
- Specific Screen Readers
- Using Hal
- Using JAWS for Windows
- Using Window-Eyes
- Talking and Text-Only Browsers
- A Talking Browser
- A Text Browser
- Screen Magnification
- Browser Checks of Website Accessibility
- Websites That Analyze a Page
- Browser Settings for Testing a Page
- Toolbars and Favelets
- The NCAM Accessibility QA Favelet
- The Web Accessibility Toolbar
- The Section 508 Toolbar
- Summary
- Chapter 6: Accessible Content
- Guidelines for Accessible Web Development
- WCAG 1.0
- WCAG 2.0
- Section 508 Standards
- Using Text Equivalents for Images
- Guidelines and Standards for Text Equivalents
- WCAG 1.0
- Section 508
- WCAG 2.0
- Classification of Images
- Image Links
- Image Map Hotspots
- Image Buttons
- Decorative and Formatting Images
- Charts and Graphs
- Accessible Image Links
- The Role of Positional Information or Context
- Accessible Image Map Hotspots
- An Accessible Client-Side Image Map
- Style of Alternative Text
- An Inaccessible Client-Side Image Map
- Accessible Image Buttons
- Treatment of Formatting and Decorative Images
- Spacer Images
- Other Formatting Images
- Images That Repeat Textual Information
- Decorative Images
- Treatment of Images That Carry a Lot of Information
- Summary for Text Equivalents for Images
- Using Text Equivalents for Audio
- Guidelines and Standards for Audio
- Transcripts
- Using Color
- Color to Convey Information
- Color Contrast
- Creating Accessible Tables
- Layout Tables
- How Tables Linearize
- Spanning Cells in Layout Tables
- Guidelines and Standards for Layout Tables
- Tools for Checking Linearization
- Data Tables
- Guidelines and Standards for Data Tables
- Simple Data Tables
- Layered Data Tables
- Irregular Data Tables
- The Caption Element and Summary Attribute
- Assistive Technology and Tables
- Home Page Reader and Tables
- JAWS and Tables
- Window-Eyes and Tables
- Default Behavior
- Summary for Accessible Tables
- Flicker Issues
- Guidelines and Standards for Flicker
- The
Blink
and Marquee
Elements
- Summary
- Chapter 7: Accessible Navigation
- Navigation Considerations
- Reading Order
- Heading Navigation
- Skip Navigation Links
- Creating Skip Navigation Links
- Placing a Link in Normal Text
- Creating a Link As
Alt
-Text on an Invisible Image
- Using a Text Link Styled to Be Invisible
- Exposing the Link When It Receives Focus
- The In-Page Link Problem with Internet Explorer 6
- Skipping Text Blocks with Assistive Technologies
- Skipping Links with Window-Eyes
- Skipping Links with Home Page Reader
- Skipping Links with JAWS
- Accessible Frames
- How Frames Work
- How Assistive Technologies Support Frames
- Frames and Focus
- Summary for Frames
- Accessible Image Maps
- Client-Side Image Maps
- Server-Side Image Maps
- Complex Client-Side Image Maps
- Summary for Image Maps
- Layout and Navigation
- Accessible Links
- Link Navigation
- Link Text
- Summary
- Chapter 8: Accessible Data Input
- Guidelines for Data-Input Forms
- Accessible Forms
- Form Components
- Buttons
- Text Input Fields and Text Areas
- How Forms Sound
- Placement of Prompting Text
- Best Practices for Accessible Forms
- When Labels Won'
t Work
- Use the
Title
Attribute
- Use the
Fieldset
and Legend
Elements for Sets of Controls
- Do Not Use Labels As Containers
- More Is Not Better
- Mandatory Fields, Errors, and Help for Forms
- Mandatory Form Fields
- Form Validation
- Server-Side Validation
- Client-Side Validation
- Help for Form Fields
- PDF Forms
- Accessibility of Forms for People Who Are Deaf
- Timed Responses
- Summary
- Chapter 9: CSS for Accessible Web Pages
- How Style Sheets Benefit Accessibility
- CSS Basics
- Inline Styles
- Embedded Style Sheets
- Linked and Imported Style Sheets
- User Style Sheets
- Browser Style Sheets
- Color and Backgrounds
- Background and Text Colors
- Background Images
- Foreground and Background Contrast
- Other Means of Conveying Information
- Text and Fonts
- Text Sizing
- Text Margins and Indentation
- Font Family
- Letter and Word Spacing
- Letter Case
- Text Direction
- Image Replacement Techniques
- CSS On, Images Off
- Scalable Inman Flash Replacement (sIFR)
- Deprecated Image Replacement Techniques
- What'
s Wrong with Using an
img
Tag?
- Image Replacement Abuse
- Layout and Positioning
- Sample Layouts
- Centered Elastic-Width Column
- Three Columns Using Absolute Positioning
- A Heading, a Footer, and Two Liquid Columns
- Navigation Design
- Invisible Labels for Form Elements
- Bullet Styles for Lists
- Empty Table Cells
- Alternative Style Sheets
- Alternative Style Sheet Specification
- Style Sheet Switching
- Zoom Layouts
- Nonscreen Media
- Auditory CSS
- Paged Media
- Media-Specific Style Sheets
- Testing and Validation
- Summary
- Chapter 10: Accessible JavaScript
- The JavaScript Saga
- Why JavaScript Has a Bad Reputation
- JavaScript Considerations
- What Visitors Need
- Guidelines for Dynamic JavaScript
- Follow Standards, Not Browsers
- Essential Markup Should Not Rely on JavaScript
- Generated HTML Follows the Same Rules As Written HTML
- Be Aware of Visitor and User Agent Restrictions
- Sometimes Less Is More
- Don'
t Break Too Many Conventions
- Test Everything You Access
- Keep Everything Separated
- Unobtrusive JavaScript
- JavaScript As the Behavior Layer
- Interactivity
- Look and Feel
- New Windows
- Guidelines for Opening Windows
- A Reusable Pop-Up Script
- Element Visibility
- Outdated Techniques and Replacements
document.write
<noscript> </noscript>
href="javascript:"
and onclick="javascript:"
onclick="void(0)"
and Other "Do Nothing" Commands
document.all
, document.layers
, and navigator.userAgent
- Functions with a Lot of Parameters
innerHTML
- Accessible Forms and JavaScript
- Form Enhancements
- Form Validation
- Summary
- Chapter 11: Accessible Flash
- User Requirements
- Key Questions
- Use Case Scenarios
- John
- Ava
- Jeff
- Makoto
- Karen
- Technical Requirements
- Flash Player Version
- Platform and Browser
- Screen Reader
- Key Concepts for Accessible Flash Design
- Control Labels
- Control Roles
- Control States
- Control Structure
- Flash Accessibility Best Practices
- Provide Text Equivalents
- Providing Text Equivalents for an Entire Movie
- Making Objects Inaccessible
- Using Auto-Labeling
- Assigning Text Equivalents for Single Objects
- Provide Context
- Describing the Movie
- Exposing State
- Control Reading Order
- Reflecting the Screen Structure
- Using Tab Index Values
- Assigning a Reading Order Using ActionScript
- Removing Objects from the Reading Order
- Detecting Screen Readers
- Control Animation
- Ensure Keyboard Access
- Avoiding Techniques That Prevent Access
- Assigning Keyboard Shortcuts
- Use Progressive Disclosure
- Enable Component Accessibility
- Provide Captions
- Importing Captioned Content
- Placing Text Directly on the Stage
- Streaming XML Caption Data
- Provide Control Over Audio Playback
- Use Color Wisely
- Support Users with Low Vision
- Embed Flash Accessibly
- Summary
- Chapter 12: PDF Accessibility
- Accessibility Features in Adobe Reader
- Changing Document Colors
- Resizing Documents
- Zooming in PDF Documents
- Eliminating Horizontal Scrolling
- Self-Voicing
- Support for Accessible Media
- Assistive Technology Support
- Tagged PDFs
- Creating Tagged PDFs in Microsoft Word
- Images
- Structure
- Tables
- Hyperlinks
- Lists
- Reading Order
- Color Contrast
- Creating Tagged PDFs in InDesign CS2
- Accessibility Repair and Optimization
- Dealing with Untagged Documents
- Making Scanned Documents Accessible
- Correcting Tagging Issues
- Verifying and Repairing Reading Order
- Adding Missing Text
- Verifying and Adding Headings
- Adding Image Equivalents
- Verifying and Repairing Tables
- Using Acrobat'
s Accessibility Checker
- Accessible PDF Forms
- Summary
- Chapter 13: Accessibility Testing
- What Testing Is Possible?
- Text Equivalents
- Synchronized Multimedia
- Color Coding
- Style Sheets
- Redundant Text Links
- Use Client-Side Image Maps
- Table Headers
- Complex Tables
- Frames
- Flicker Rate
- Text-Only Page
- Scripting
- Applets and Plug-Ins
- Online Forms
- Skip Navigation
- Timed Responses
- Accessibility Checking Software
- Bobby 5.0
- Choose the Tests to Be Used—
Bobby
- Analyze the Files—
Bobby
- Examine the Results—
Bobby
- Choose Report Formats—
Bobby
- InFocus
- Choose the Tests to Be Used—
InFocus
- Analyze the Files—
InFocus
- Examine the Results—
InFocus
- Choose Report Formats—
InFocus
- LIFT Machine
- Choose the Tests to Be Used—
LIFT
- Analyze the Files—
LIFT
- Examine the Results—
LIFT
- Choose Report Formats—
LIFT
- Ramp Ascend
- Choose the Tests to Be Used—
Ramp
- Analyze the Files—
Ramp
- Examine the Results—
Ramp
- Choose Report Formats—
Ramp
- WebKing
- Choose the Tests to Be Used—
WebKing
- Analyze the Files—
WebKing
- Examine the Results—
WebKing
- Choose Report Formats—
WebKing
- WebXM
- Choose the Tests to Be Used—
WebXM
- Analyze the Files—
WebXM
- Examine the Results—
WebXM
- Choose Report Formats—
WebXM
- The Test File Set and Results
- The Test Suite
- Results Summary
- Summary
- Chapter 14: Introduction to WCAG 2.0
- Standards vs. Guidelines
- WCAG 2.0 from 50,000 Feet
- What'
s in WCAG 2.0?
- Principles and Guidelines
- Principle 1
- Principle 2
- Principle 3
- Principle 4
- Success Criteria
- Techniques Documents
- Example of Using the WCAG 2.0 Guidelines
- WCAG 2.0 Advantages and Concerns
- Advantages
- Concerns
- Not Completely Measurable
- Revolutionary Rather Than Evolutionary
- Baselines and Conformance
- Other Concerns
- Section 508 and WCAG
- Summary
- Chapter 15: Retrofitting Case Study: Redesign of a University Website
- The Original Site
- The Problems
- The Initial Fixes
- The Redesign
- Decisions in Early Planning Stages
- Why Web Standards?
- Why XHTML Rather Than HTML?
- Why Move Away from Tables?
- Site Structure—
Taking Stock
- Building Page Templates
- Planning the Page Structure
- Styling the Template
- Bringing in the Content
- Getting Dynamic
- Testing and Site Launch
- Does the Design Solve the Original Problems?
- Problems Along the Way—
Lessons Learned
- The Implementation of the New Design
- Summary
- Part 3: Accessibility Law and Policy
- Chapter 16: U.S. Web Accessibility Law in Depth
- Americans with Disabilities Act and the Internet
- Section 504 of the Rehabilitation Act of 1973
- Accessible Web ADA Myths
- Applying the ADA to the Internet
- Accessibility of State and Local Government Websites
- Introduction to the ADA Complaint Process
- Current ADA Case Law
- Martin v. Metropolitan Atlanta Transportation Authority
- Access Now v.Southwest Airlines
- Hooks v.OKBridge
- Other ADA Cases
- Selected ADA Accessible Web Complaints
- Office for Civil Rights, U.S. Department of Education
- America Online
- Online Banking Settlements
- Online Voting
- Online IRS Tax Filing Services Settlement
- Credit Card Company Monthly Statements
- Websites and Tax Fraud
- Websites and USDOJ Project Civic Access
- Travel Websites Settlement Agreements
- Section 255 of the Telecommunications Act of 1996
- Electronic and Information Technology Accessibility Standards (Section 508) Overview
- State of Federal Accessibility Report to the President
- U.S. Access Board Guide to the Standards
- When Does a Web Developer Follow Section 508 Rules?
- Legal Hot Topics for Web Developers and Policy Makers
- U.S. Department of Transportation Notice of Proposed Rulemaking
- Electronic Forms
- Applets, Plug-ins, and Applications
- PDF and Posted Documents
- Multimedia, Audio Broadcasts, and Captioning
- Links to Inaccessible Content Off-Site
- Summary
- Chapter 17: Worldwide Accessibility Laws and Policies
- Australia
- The Disability Discrimination Act
- Government Website Standards
- Banking and AIMIA Websites
- Austria
- Belgium
- The BlindSurfer Project
- Flanders Plan for Accessible Websites
- Walloon Government
- Brazil
- Canada
- Denmark
- European Union
- eEurope and i2010 Initiatives
- EU Web Accessibility Benchmarking Cluster
- Finland
- France
- Germany
- Hong Kong
- Ireland
- Italy
- Japan
- JIS X 8341-3 Standard
- Japanese Policy Development
- Korea
- Luxembourg
- The Netherlands
- New Zealand
- Norway
- Portugal
- Singapore
- Spain
- Sweden
- Thailand
- United Kingdom
- Summary
- Appendix A: Glossary of Terms
- Appendix B: Guide to the Section 508 Standards for Electronic and Information Technology
- Appendix C: Overview of PAS 78 Guide to Good Practice in Commissioning Accessible Websites