Enable full keyboard access on your Mac

This article was originally written by Todd Kloots for the Yahoo! Accessibility Lab. It answers a very common problem for Mac computers and has been re-printed within the Intuit Accessibility blog with permission from Yahoo Accessibility.

Full keyboard access isn’t enabled by default in Mac OS. Often this leaves developers thinking there is something wrong with the implementation of keyboard access for a site or application, when in fact it is just a matter of changing a few system and browser preferences.

Full Keyboard Access Explained

In the context of browsers on the Mac, the various “full keyboard access” preferences affect the behavior of the Tab key. With the default settings applied (full keyboard access disabled), the Tab key moves focus between a subset of controls. This subset varies between browsers on the Mac:

Browser Default Tab Key Access
Safari
  • Most form controls requiring text input or selection
  • Custom controls made focusable via the tabindex attribute
Firefox
  • All form controls
  • Custom controls made focusable via the tabindex attribute
Chrome
  • All form controls
  • Custom controls made focusable via the tabindex attribute

Enabling On the Fly

Given the default settings on the Mac, how do keyboard users navigate and interact with controls that aren’t in the default Tab flow?

Safari provides the Option key as a modifier for Tab. Pressing Option + Tab will extend access to include links. Additionally, Mac OS provides the global Ctrl + F7 keyboard shortcut which toggles the ability to access to all controls via the Tab key. Together these shortcuts can provide a nice usability affordance; they give keyboard users more options with respect to how to navigate a page or application.

For users of Firefox, switching the behavior of the Tab key is as easy as it is for Safari. Unlike Safari, Firefox provides access to all controls but links by default. The Ctrl + F7 shortcut can be used to extend access to include links.

Chrome follows Firefox providing access to all controls but links by default, but doesn’t honor Ctrl + F7. To modify the behavior of the Tab key, the user has to navigate into preferences.

Enabling via Preferences

Rather than change full keyboard access on the fly, it is possible to make full keyboard access the default.

Firefox

Firefox uses the Mac OS preference panel
Firefox relies on the Keyboard settings in System Preferences. Changing these preferences enables full keyboard access to not just Firefox, but all applications.

  1. Go to Keyboard in System Preferences in OS X
  2. Find the “Full Keyboard Access” section at the bottom of the dialog
  3. Check the “All Controls” radio button

You can also press Ctrl + F7 to change this preference.

Safari

Safari preferences screenshot

  1. Go to Safari > Preferences > Advanced
  2. Check the “Press Tab to highlight each item on a webpage” checkbox

Google Chrome

Chrome now has full keyboard access enabled by default. You don’t need to change anything, but here’s how to review and change it in the future.

  1. Go to Chrome > Preferences > Under the Hood
  2. Check the “Pressing Tab on a webpage highlights links, as well as form fields” checkbox

Enabling Keyboard Control Demonstration

Leave a Reply

Your email address will not be published. Required fields are marked *