Usage
Menu popover buttons come in several forms: from a simple dropdown of links to more expansive mega-nav menus.
Don’t overcomplicate this
- Do not add
role="menu"
orrole="option"
to the markup.- These roles imply additional keyboard functionality will be present
- Unless you’re building actual Web based software like Gmail, this is unnecessary
- Current support:
- Not baseline. This simple example uses the popover API with anchor positioning which has the most support in Chrome (Safari, Firefox etc. may not yet support this and will require a polyfill).
<nav class="popover">
<ul>
<li>
<button class="popover-toggle menu" popovertarget="nav-popover">
Menu
</button>
<ul id="nav-popover" class="popover-surface" popover>
<li>
<a href="/accessible-design/">Design</a>
</li>
<li>
<a href="/accessible-web/">Web</a>
</li>
<li>
<a href="/accessible-ios/">iOS</a>
</li>
<li>
<a href="/accessible-android/">Android</a>
</li>
</ul>
</li>
</ul>
</nav>