Requirement: You MUST ensure that all functionality is available using the keyboard alone, and there are no keyboard traps:
Why is this required?
Why is this required? Someone using the keyboard to navigate will be unable to proceed if they cannot use a keyboard command to exit particular elements of the page.
Example: Include links, menus, buttons, form fields, and drag and drops.
Requirement: You MUST ensure that the focus order of elements on the page is appropriate for the structure of the page.
Why is this required?
WCAG Reference: This corresponds to WCAG 2.4.3
Requirement: You MUST ensure that any elements on the page which receive focus when navigated using the keyboard are clearly highlighted when they are in focus.
Why is this required? This is to help people identify and interact with components on the page (e.g. links, buttons, drop down menus).
WCAG Reference: This corresponds to WCAG 2.4.7
Requirement: You MUST ensure that the focus of assistive technologies stays within the user’s control and moves to the part of the page that has browser focus (OU).
Why is this required? To ensure users know where the focus is and are not disorientated.
Requirement: You MUST NOT use character key shortcuts that use only letters, punctuation, numbers or symbols.
Why is this required? The ability to reconfigure or disable shortcuts is beneficial for users prone to accidentally hitting keys.
Example: For users inputting via speech may need to disable keyboard shortcuts to prevent words from the microphone from triggering the shortcuts.
Keyboard-only users with dexterity challenges can be prone to accidentally hitting keys. Those users would be able to avoid problematic single character shortcuts by turning them off or modifying them to include at least one non-character key.
Exceptions: If using character key shortcuts is unavoidable, it’s a good idea to make sure ONE of the following mechanisms exists:
WCAG Reference: This corresponds to WCAG 2.1.4.
Please refer to Understanding Success Criterion 2.1.4: Character Key Shortcuts for more information.
Requirement: You MUST provide an alternative mechanism, where the interface uses a multi-point or path-based gesture.
Why is this required? Many operating-system level assistive technologies like screen readers, block the use of multi-point and path-based gestures. And, multi-point / path-based gestures are likely to be difficult or impossible for users who lack fine motor-control.
Example: When a pinching motion is used to zoom a map, buttons should also be provided to achieve the equivalent zoom in/zoom out functionality.
WCAG Reference: This corresponds to WCAG 2.5.1
Requirement: You MUST only use mouse or keyboard up (or click) events (not "down" events).
Why is this required? To allow users to undo actions that they may have taken in error, for example, when they are struggling to navigate through a form.
Example: Where an online assessment includes a drag and drop exercise, the user should be given the ability to undo or cancel the drag and drop operation.
Exceptions: If there is a mechanism to abort or undo the event.
WCAG Reference: This corresponds to WCAG 2.5.2
Requirement: You MUST provide an alternative, where a device tilt, shake or other motion is used to actuate an event.
Why is this required? To allow users who can't or who struggle to make complex movements, and those who have tremors and other involuntary movements, to use an alternative mechanism.
Example: When a swirling or shaking action is used in a mobile simulation of a chemistry experiment, the same effect can be achieved by pressing a conventional form button labelled "Mix the chemicals".
Exceptions: Where precise movements are an essential requirement (for example, when the use of precise adjustments of stick and pedal positions are essential to a pilot's training in a flight simulator).
WCAG Reference: This corresponds to WCAG 2.5.4
‘Web accessibility’ is defined as the practice of making websites usable by people of all abilities and disabilities.
...about MUST, SHOULD or MAY?
The Terminology section explains why each of these terms is used, and what they mean.