The accesskey
attribute sounds like a great idea at first. Being able to attach a keyboard shortcut to elements in an HTML document allows users to quickly jump to different parts of the page or trigger functionality without having to use a mouse.
The problem, as has been stated by Derek Featherstone in More reasons why we don’t use accesskeys, John Foliot in Using Accesskeys - Is it worth it?, and Jukka Korpela in Using accesskey attribute in HTML forms and links, to name a few, is that most current web browsers do not prevent shortcuts assigned through an accesskey
attribute from clashing with existing keyboard shortcuts specified by the browser or operating system. Even if they did do that, there would still be issues with internationalisation and key availability.
Because of this, I rarely use the accesskey
attribute. In fact, I am considering not using it at all. Looking forward (way forward), the accesskey
attribute is not included in current drafts of XHTML 2, since it has been replaced by the access
element. Unfortunately it looks like the access
element will suffer from the same problems as the accesskey
attribute.
John Foliot explains why in ACCESS + KEY still = ACCESSKEY - The XHTML Role Access Module still flawed, an open letter to the draft editors of XHTML 2. Ian Lloyd at Accessify agrees and points to a system that lets users specify their own shortcut keys in The Trouble With Accesskeys.