2.18 Ensure that user interfaces are device-independent
WAI checkpoint 9.2
Full WAI text: "Ensure that any element that has its own interface can be operated in a device-independent manner." Examples of elements that have their own interfaces include interactive features or web based applications such as tax calculators or games written in Java or Macromedia Flash. These elements are embedded in a web page and have their own controls, input and output mechanisms.
Ensure that it is possible to interact with controls, provide inputs and perceive outputs of such elements using the widest range of input devices (including the mouse, keyboard, microphone, Braille devices, head wands or other pointing devices) or output devices (including display monitors, loudspeakers, headphones or Braille devices).
Interfaces which do not provide flexibility in the type of device used to interact with them are inherently inaccessible. A laptop user may choose to work without a mouse. If this were the case and interactive features on a site required "drag and drop" interactivity as the only means of interaction, the site would be unusable. Similarly, a site delivered through a kiosk or public access terminal with only a touch screen interface would be unusable.
Developing device independent interfaces facilitates porting the site to the widest range of computing devices, including mobile handsets, PCs, and Interactive Voice Response systems (IVRs).
Screen reader users rely entirely on keyboard input and audio output for interacting with websites. Failing to provide support for audio output or the keyboard as an input device will make the site unusable for them. Other users may use voice input for hands-free operation in a busy office, or if they have dexterity limitations.
Directions and Techniques
Separate structure and presentation
Design the structure of documents or web pages before thinking about how they will be presented to the user. Refer to WAI recommended techniques for separating structure and presentation
If you use Java to create applets, consult the Java Look and Feel Guidelines from Sun
Java has inherent accessibility features. Ensure that you have provided for input device independence using them. Refer to Sun's guidelines on accessibility features provided in Java for details on using them.
How you could check for this:
Disconnect the mouse and try to navigate with the keyboard
Assuming that you know how interact with a website using keyboard only navigation, this simple test will very quickly show you if it is possible to navigate or interact with the site using an input device other than the mouse. Be especially sure to test interactive features like forms, drop-down menus, pop-out menus, etc.