Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The seciton about role=menubar should caution authors not to use it for navigation menus #102

Closed
detlevhfischer opened this issue Nov 4, 2015 · 8 comments

Comments

@detlevhfischer
Copy link

Using role=menubar for navigation sections leads to badly accessible or inaccessible navigation menus in several combinations of browser / screenreader (in a recent test, problems occured in JAWS / IE, NVDA/FF, iOS/VoiceOver.
Authors should be strongly advised to use menubar / menu consatructs ONLY for application-type content mimicking desktop menus. We havehad cases where developers followed ARIA best practice in good faith and made their navigation inaccessible for SR users as a consequence.

@StommePoes
Copy link

+1, developers call all sorts of things menus, the specs need to be clear what role="menu" means. I have seen in two sites unusable role="menu" navigation mega-menus.

@ZoeBijl
Copy link

ZoeBijl commented Dec 7, 2015

Link to working draft: http://www.w3.org/TR/wai-aria-practices-1.1/#menu
Link to editors draft: https://cdn.rawgit.com/w3c/aria/master/practices/aria-practices.html#menu

Current description:

A menu is a type of widget that offers a list of choices to the user. A menu is often a list of common actions or functions that the user can invoke. The menu role is appropriate when a list of menu items is presented in a manner similar to a menu on a desktop application.

A menubar is a presentation of a menu that usually remains visible and is usually presented horizontally. The menubar role is used to create a menu bar similar to those found in Windows, Mac, and Gnome desktop applications. A menu bar is used to create a consistent set of frequently used commands.

This also came up during last weeks (?) APG call. Not sure if there is an action for this there is no action on the internal tracker.

@ZoeBijl ZoeBijl added the APG label Dec 7, 2015
@StommePoes
Copy link

That first paragraph can be thought of in terms of navigation menus, as links count as choices in many's minds. Menubar, same thing, except where it says similar to those found in OSes.

An explicit "not meant for typical website navigation" is the right direction and possibly adding "typical desktop application menus offering options as File, View, Edit..." will help developers think of the kinds of menus these roles are meant for.

@ZoeBijl
Copy link

ZoeBijl commented Dec 7, 2015

Maybe something like:

A menu is a type of widget that offers a list of choices to the user. A menu is often a list of common actions or functions that the user can invoke within an application/web application. The menu role is appropriate when a list of menu items is presented in a manner similar to a menu on a desktop application, where typical offerings are File, View, and Edit.

@ZoeBijl
Copy link

ZoeBijl commented Dec 7, 2015

@StommePoes some changes have been pushed today: cb19e22...e199d95

@jasonkiss
Copy link
Contributor

Using role=menubar for navigation sections leads to badly accessible or inaccessible navigation menus in several combinations of browser / screenreader (in a recent test, problems occured in JAWS / IE, NVDA/FF, iOS/VoiceOver.
Authors should be strongly advised to use menubar / menu consatructs ONLY for application-type content mimicking desktop menus. We havehad cases where developers followed ARIA best practice in good faith and made their navigation inaccessible for SR users as a consequence.

If the inaccessibility of menubar is the result of poor implementation by browsers and/or AT, then bugs should be filed with them. And any advice to not use menubar should be clear that it is temporary and/or in place because of the lack of existing support.
If the inaccessibility of menubar is a problem for navigation menus, why is it not also a problem for "application-type content mimicking desktop menus"?

@StommePoes
Copy link

I think the problem comes in where traditional navigation menus have been a thing since forever and have at least been basically navigable in the past (pre-aria), but now with these added, vaguely-supported new roles can turn these nav menus into almost-entirely-unusable nav menus. Nav menus meaning, nested links with anchors in them, mega menus, etc. Where no form controls are present. My understanding of the menu(item) roles is they are not meant for navigation menus, but application menus.

I see this issue as saying "make it super-captain-obvious clear to devs looking to do the right thing to leave navigation menus alone and NOT implement these "menu/menuitem" roles for them," rather than "don't use menu roles evar."

Whereas if vague half-butted support for menu(item) roles causes issues for actual command-menus, this is similar to support issues with other things like drag and drop not passing on keystrokes when lisitem/treeitem roles are used, and that's a separate, per-vendor issue as you say.

@ZoeBijl
Copy link

ZoeBijl commented Apr 29, 2016

This issue was moved to w3c/aria-practices#13

@ZoeBijl ZoeBijl closed this as completed Apr 29, 2016
pkra pushed a commit to pkra/aria that referenced this issue May 20, 2024
move line to same place as ARIA spec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants