Safari tab key navigation disabled by default

For some bizarre reason tab key navigation is turned off by default in the Mac Safari web browser. By this I mean hitting the tab key repeatedly does not visit each interactive element on the page.

This lack is a pain for keen keyboard users as it’s the only guaranteed way to access all links and form elements. Even if  websites were to apply the AccessKey attribute to all links and fields, browsers in general do not provide a way to discover what allocations have been made. Browsers do provide a useful default tab order, assuming the HTML markup has a reasonable element flow.

Another group of users that need tab key access  are users of simple alternative input like switches. The overlay assistive technology that such users often use translate simple gestures into tab and enter key events, thus allowing access to most of the web app doc. This is slow and painful in many cases. especially if the tab order is not well designed. However it does provide access. The common exceptions are any ‘clever’ javascript custom controls that forget to provide any keyboard access, assuming pointer only is used. This is more common than it should be and is yet another good reason to use an established accessible toolkit like jQuery UI , Dojo or Fluid Infusion for your web app.

Screen reader user also benefit from tab navigation, though screen readers provide do more useful ways to navigate the screen. For example they can list headings (assuming the document has been well structured, as screen readers can’t work miracles).

So I wonder why this is turned off by default? I use Firefox as my default browser on my Mac Book Pro, but when setting up this blog I ran Safari for a quick test of a guest user. I used the tab key to check the Accessible 2 sub theme was doing its stuff. It was broken and tab skipped straight to the search box (the first form input element), missing all the links.

There has long been an option in system prefs – > keyboard that enables tab to all fields, but even though this was on I had no joy. Eventually after a twitter discussion, I stumbled across a new (?) similar option in Safari -> Prefs -> Advanced that also need to be turned on in order to enable basic tab navigation.

Does anyone know the logic for having tab navigation turned off in Safari by default? I’m guessing someone with influence had an issue of some sort. In Windows and Linux, tab navigation is a fundamental of any UI whether it’s a dialog or an app. HTML5 allows any item to be focusable either programmatically or by the user. So having tab navigation off is a bad move.

This entry was posted in a11y and tagged , , , . Bookmark the permalink.
Skip to top

Comments

5 Responses to Safari tab key navigation disabled by default

  1. Paul says:

    Thanks for the article. That’s one of the things that Safari frustrated me with and consequently caused me to stop using the browser. I’m kinda over Google Chrome so i might have a reason to switch back.

  2. Matt says:

    Safari now uses the key combo option+tab to visit all links on a page…

    • stevelee says:

      Thanks for that Matt – I see you are right and that’s an improvement.

      It’s a shame that Alt+tab no longer switches between Windows in Lion – but then it never worked quite the same as Windows and Linux, which was annoying.

  3. Yingying says:

    Thanks for the article. I didn’t realized the Safari disabled tabs before I saw your article. Although with mouse, a lot of users use Tab key very often. I think we do need to pay attention to this for the websites.

Leave a Reply

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