Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Cover
Title
Copyright
Dedication
Contents at a Glance
Contents
Dedication
About the Author
About the Technical Reviewer
Acknowledgments
Introduction
Chapter 1: Introduction to HTML5 Accessibility
Introduction to HTML5: The New Wave
HTML5 vs. HTML 4
HTML5 Syntax
New Elements
HTML5: Accessibility and Feature Detection
Defining Accessibility
Accessibility: From Theory to Practice
Understanding Accessibility
Legislation
Rehabilitation Act
Other Relevant Legislation
Disability Discrimination Act 1995
Special Educational Needs and Disability Act 2001
PAS78, the DDA, and the Equality Act 2010
European Legislation
Dealing with Change and Diversity
What Are the Benefits of Accessibility?
Accessibility Should Enhance Your Design—Not Destroy It
WCAG 2.0 and HTML5
The Challenge of HTML5 Accessibility
Conclusion
Chapter 2: Understanding Disability and Assistive Technology
Understanding Your Users
It’s All Me, Me, Me with Some People!
Overview of Blindness
Blindness and Accessibility
Vision Impairment
Glaucoma
Macular Degeneration
Retinopathy
Detached Retina
Physical Disability
Cognitive and Sensory Disabilities
Perception
Memory and Attention
Sequencing
Dyslexia
What Is Assistive Technology?
What Is a Screen Reader?
Screen Readers and Alternatives
Technologies for Mobile Device Accessibility
Speech Synthesis: What Is It and How Does It Work?
Screen Magnification
Switch Access
Mouse Emulation
Switch Access, Mouse Emulation, and the Web
The Accessibility Overlap
Conclusion
Chapter 3: JavaScript Isn’t a Dirty Word, and ARIA Isn’t Just Beautiful Music
JavaScript: Useful When Used Well
WAI-ARIA: What Is It?
What’s Wrong with HTML 4, 3, 2…?
Accessible JavaScript
Progressive Enhancement
Unobtrusive JavaScript
Tidy Coding
Common JavaScript Accessibility Problems
Creating Accessible Pop-up Menus and Inline Event Handlers
Use of TabIndex and More Advanced Focus Techniques
JavaScript and WCAG 2.0
Common Scripting Failures in WCAG 2.0
Accessible JavaScript Toolkits
WAI-ARIA: How to Do It!
Conclusion
Chapter 4: API and DOM
Defining the Elements Under the Hood of Assistive Technologies
What’s an API?
What’s a Layout Engine?
What Are Accessibility APIs?
The Off-Screen Model (OSM)
What Is the DOM?
Commonly Used Accessibility APIs
HTML5 and Accessibility APIs
Conclusion
Chapter 5: HTML5: The New Semantics and New Approaches to Document Markup
HTML5: What’s New?
New HTML5 Semantics
Global Attributes in HTML5
A Quick Recap on How and Why to Use Heading Elements
Meet the New divs on the Block
Getting Sectioned
As an Aside, Did You Hear the One About the Vicar and the […]
Conclusion
Chapter 6: Images, Rich Media, Audio, and Video in HTML5
Making Images Accessible
Meet the Poster Child of Accessible Web Design: The alt Attribute
How Screen Readers Handle @alt Text
@alt Drawbacks
What Should I Describe?
Describing Content: Don't Overdo It
Different Kinds of Images
What's New in HTML5 for Describing Images?
Describing an Image with ARIA-describedby
Which Method Should I Use?
Type 1: Describing a Visually Rich Image
Image Color Contrast
HTML5 and Accessible <video> and <audio>
HTML5 <video>, <audio>, and You
HTML5 <video> and Your Users
What's Wrong With Flash?
Accessibility Problems in Flash
Building an Accessible Player
First Things First: What's New in Embedded Content?
<video> Fallback Content
The Media Elements API
Getting Started with <video>
Making Your Controls Accessible
Accessible HTML5 Video Player Version 1
Accessible HTML5 Video Player Version 2
Audio Description and Captioning with the <track> Element
Cue Settings
Creating an <audio> Player
<canvas> Accessibility
Conclusion
Chapter 7: HTML5 and Accessible Data Tables
The Trouble with Tables
Screen Readers and Data Tables
Common Patterns for Data Tables
TMI?
How to Create Accessible Tables
Conclusion
Chapter 8: HTML5 and Accessible Forms
Designing an Accessible Form User Interface
Some Forms Good Practices
Differences in FORM Elements Between HTML 4 and HTML5
HTML5 Labeling of Form Controls
New HTML5 Elements
New HTML5 INPUT Types
New HTML5 Form Attributes
Accessible Error Recovery
Conclusion
Chapter 9: HTML5, Usability, and User-Centered Design
What Is Usability?
Universal Design
Participatory Design
Focus Group Research
Surveys
The Cognitive Walkthrough
Expert Evaluations
Expert Accessibility Audits
Using Personas
Building Personas
Does Using Personas Work?
Field Studies
Traditional Usability Testing
User Testing with People with Disabilities
Formal vs. Informal User Testing
Measuring User-Testing Outputs
How Does User Testing Work?
Goals and Benefits of User Testing
Limitations of Testing
So What's the Best Method for Me to Assess My HTML5 Project?
Iterative Design Processes
Is Usability the New Economics?
Conclusion
Chapter 10: Tools, Tips, and Tricks: Assessing Your Accessible HTML5 Project
Useful Tools for Developers
The Chris Pederick Web Developer Toolbar
WAT-C Web Accessibility Toolbar (Internet Explorer and Opera)
Colour Contrast Analyser
WAVE
Firebug
Tools in the Browser
Automated Accessibility Evaluation Tools
Want to Examine Accessibility APIs? Try AccProbe or Inspect32
Disability Simulation Tools: aDesigner
Guerilla User Testing
Validation
Cascading Style Sheets
Simulation Exercises
Simulation Exercise 1:No-Frills Browsing
Simulation Exercise 2: Turning Off Your Display and Using a Screen Reader
Conclusion
Appendix A: WCAG 2.0 Client-Side Scripting Techniques
SCR1: Allowing the user to extend the default time limit
Description
Examples
SCR2: Using redundant keyboard and mouse event handlers
Description
Tests
Expected Results
SCR16: Providing a script that warns the user a time limit is about to expire
Example
SCR21: Using functions of the Document Object Model (DOM) to add content to a page
Description
Example
SCR24: Using progressive enhancement to open new windows on user request
Description
Example
SCR26: Inserting dynamic content into the Document Object Model immediately following its trigger element
Description
Example
Tests: Procedure
Expected Results
SCR28: Using an expandable and collapsible menu to bypass block of content
Description
Example 1
Example 2
SCR32: Providing client-side validation and adding error text via the DOM
Description
Example
HTML and JavaScript Code
SCR35: Making actions keyboard accessible by using the onclick event of anchors and buttons
Description
Example 1
Example 2
SCR37: Creating custom aialogs in a device-independent way
Description
Example
Appendix B: Definition of WAI-ARIA Roles
WAI-ARIA States and Properties
Index
← Prev
Back
Next →
← Prev
Back
Next →