Rule: Sequential tab order of focusable elements must be meaningful

Rule ID Keyboard 2
Conformance Required
Definition The sequential tab order of all links, form controls, and ARIA widgets on the page must be meaningful.
Purpose
  • Support for tab key traversal of focusable elements is required by people who cannot use the mouse and/or gestures to select the options and perform the actions made available to them by interactive elements.
  • Native HTML links and form control elements have default keyboard support for tab key traversal that are built-in and standardized among browsers.
  • When authors create custom interactive elements they need to support the keyboard interaction patterns that users have come to expect, and a key part of implementing this support is understanding how the tabindex attribute can be used for managing keyboard focus.
  • The ARIA Authoring Practices Guide identifies how to use tabindex to help manage keyboard focus for widget roles.
  • NOTE: Touch typists often prefer keyboard commands over mouse actions, especially for frequently performed operations, since they are much more efficient from a hand motion perspective.
Conformance Required
WCAG Success Criteria

Success Criterion 2.4.3 Focus Order

Rule Category Keyboard Support
Rule Scope Page
Techniques
  • HTML form controls and link elements do not need an explicit tabindex value to be part of the sequential tab order; assigning a tabindex value to one of these elements means you intend to change its default behavior.
  • Setting tabindex attribute to 0 allows an element to become focusable and makes it part of the tab sequence of the page
  • Setting tabindex attribute to -1 allows an element to become focusable through related keyboard event handlers / scripting
  • Use the ARIA Authoring Practices Guide to define keyboard support that is appropriate for particular ARIA widget roles.
  • Use keyboard event handlers to implement keyboard support for interactive behaviors defined on the page.
  • Avoid using object and embed elements due to the difficulty in providing the corresponding keyboard support for all of their inherent interactive behaviors.
  • Avoid using tabindex values greater than 0 to change the tabbing order, since tab sequence implementations for values greater than 0 are inconsistent and their associated behaviors can be unpredictable across web browsers.
Information Links