a11yTips — Assign a navigation landmark role to the page’s…

Assign a navigation landmark role to the page’s main navigation

no. 018

Make sure the page navigation is identified using the navigation landmark role

It is common practice to assign descriptive ID values such as id=”nav” to navigation, but this information conveys no semantics to assistive technologies. The navigation landmark role is intended to fix this, by defining a collection of links for navigating the page or related documents. Its purpose is to identify a specific region of a page as the main navigation section, or as one of the major navigation sections available and convey that information to assistive technologies. Reserving this landmark role to the main navigation menu provides the added benefit of defining some level of hierarchy in all available navigation menus.

To do this, simply make sure the “navigation” ARIA landmark role is assigned to the main navigation of the page, or its parent container, when appropriate. As a complementary practice to provide additional confirmation about the object’s purpose, consider providing an aria-label attribute with a value of “Site Navigation” to add a descriptive label to this region.

User Story
Simple Code Example

<ul id=”nav” role=”navigation”>
<li><a href=”page1.html”>Menu Item 1</a></li>
<li><a href=”page2.html”>Menu Item 2</a></li>
<li><a href=”page3.html”>Menu Item 3</a></li>
</ul>

Testing Methodology

Using [...]

Read article at dboudreau.tumblr.com

Article Taxonomies

Categories:
Fatal error: Uncaught Error: Object of class WP_Error could not be converted to string in /home/webable/www/www/wp-content/themes/webable/content-mcm.php:65 Stack trace: #0 /home/webable/www/www/wp-includes/template.php(812): require() #1 /home/webable/www/www/wp-includes/template.php(745): load_template('/home/webable/w...', false, Array) #2 /home/webable/www/www/wp-includes/general-template.php(206): locate_template(Array, true, false, Array) #3 /home/webable/www/www/wp-content/themes/webable/single-mcm_article.php(15): get_template_part('content-mcm') #4 /home/webable/www/www/wp-includes/template-loader.php(106): include('/home/webable/w...') #5 /home/webable/www/www/wp-blog-header.php(19): require_once('/home/webable/w...') #6 /home/webable/www/www/index.php(17): require('/home/webable/w...') #7 {main} thrown in /home/webable/www/www/wp-content/themes/webable/content-mcm.php on line 65