In order to allow for full keyboard navigation of all element in Safari on macOS, make sure the following options are enabled.

All Controls in macOS

In the macOS settings, allow “All Controls” to be keyboard accessible. Enable this feature by going to:

  1. Settings
  2. Keyboard
  3. Shortcuts (tab)
  4. Select “All controls” (radio button)

Screenshot of the macOS Settings window. The screenshot is highlighting the selection of the 'All controls' radio button.

Highlight each item in Safari

In Safari settings, allow “highlighting of each item” in order to Tab to page controls. Enable this feature by going to:

  1. Preferences
  2. Advanced (tab)
  3. Select “Press Tab to highlight each item on a webpage” (checkbox)

Screenshot of the Safari Preferences window. The screenshot is highlighting the selection of the 'Press Tab to highlight each item on a webpage' checkbox.

With these changes in place you should now be able to use the Tab key to navigate around page content as expected.

Enable via Terminal

Run the folliowing command the Terminal to enable keyboard control at the macOS level. Helpful if your organization uses a config script for new employee machines!

defaults write NSGlobalDomain AppleKeyboardUIMode -int 3
Edit on GitHub