Plugin Sale! Save 15% on pro plugins with discount code: FALL2020
Web Dev + WordPress + Security

Accessibility Notes Plus

Just a few useful accessibility notes..

The accesskey attribute

Add accesskey attributes to important list items, content areas, and any other key areas of the document. For example, we can use alphanumeric characters as accesskey values, like so:

<ul>
	<li><a id="home"   accesskey="h" href="http://domain.com/home.html"><span   class="accesskey">h</span>home</a></li>
	<li><a id="menu"   accesskey="m" href="http://domain.com/menu.html"><span   class="accesskey">m</span>menu</a></li>
	<li><a id="search" accesskey="s" href="http://domain.com/search.html"><span class="accesskey">s</span>search</a></li>
</ul>

When an accesskey attribute is present within a link tag, pressing alt+letter on the keyboard is equivalent to double-clicking that link. Generally speaking, the presence of an accesskey attribute within an element brings focus to that element. Thus, radio and check boxes are toggled, links are clicked, and form elements are navigated as the alt+letter combination is pressed.

Skip/jump links

It is also helpful to provide “skip-to” or “jump” links that target specific areas of the site. For example, you may wish to enable users of screen readers to skip past or skip to navigational controls:

<div class="hide">
	<ul id="top" class="access">
		<li><a href="#content"    title="Skip to Content" accesskey="c">Skip to Content</a></li>
		<li><a href="#navigation" title="Skip to Menu"    accesskey="m">Skip to Menu</a></li>
		<li><a href="#search"     title="Skip to Search"  accesskey="s">Skip to Search</a></li>
	</ul>
</div>

However, due to current lack of widespread browser support, explicit id-targeting may serve better:

<a href="#menu" title="Skip to navigation menu">Skip to navigation menu</a>
<a href="#content" title="Skip to main content">Skip to main content</a>

The tabindex attribute

Another useful accessibility tool involving document meta-navigation is the tabindex attribute, which is a numerical index that represents each element’s position in the tabbing order. By default, certain elements are ignored by the tabindex, while others retain a default order which may be overridden with explicitly stated tabindex values. Consider the following example, in which the tabbing order will be “red”, “yellow”, “blue”, regardless of where the input elements appear on the page:

<form>
	<input id="red"    tabindex="1" />
	<input id="yellow" tabindex="2" />
	<input id="blue"   tabindex="3" />
</form>

More to come..

Jeff Starr
About the Author
Jeff Starr = Web Developer. Book Author. Secretly Important.
Digging Into WordPress: Take your WordPress skills to the next level.
Welcome
Perishable Press is operated by Jeff Starr, a professional web developer and book author with two decades of experience. Here you will find posts about web development, WordPress, security, and more »
WP Themes In Depth: Build and sell awesome WordPress themes.
Thoughts
Air finally clearing here in WA. Feeling grateful to breathe again. #oxygenmatters
Past week here in WA state has been hellish. So much smoke, like living in a chimney.
Now in September, I’m where I wanted to be in March.
Spent some time updating my article on unsafe characters, once again current with latest IETF specification.
Just realized that “Neo” is an anagram for “One”. As in, “he is the One” (The Matrix).
To get VLC app to load all songs (including subfolders), go to Preferences ▸ Show All ▸ Playlist ▸ Subdirectory behavior ▸ Expand.
Switching from PhotoShop to Affinity Photo is one of the most liberating work-related things I've done in 20 years.
Newsletter
Get news, updates, deals & tips via email.
Email kept private. Easy unsubscribe anytime.