-
-
Notifications
You must be signed in to change notification settings - Fork 23
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
Controversial use of the role="menu"
#3
Comments
This is why I love open source. It worried me too, but I didn't know a standard syntax for that. Let's add support of more roles for arrow-navigation and I will think about adding that proposal. |
The only problem with Later, when it will be standard, they could have some way. But what we can do right now? Maybe you know some |
Here is the first refactoring planes #9 Do you want to send PR or I can use Cult of Martians? The second plan will be focusgroup but we need to think about screen reader UX first. |
According to the WAI ARIA spec, authors must manage focus for the following roles: The The
I think that is not a problem. The Developers can use the
I can try to make some fixes/additions to it. |
Yes, but on For visual user it is not a problem since they see that focus is not moved to element they saw. But for screen reader is a problem since they do not know about elements they are missing not pressing arrow keys.
Screen reader will repeat it every time. So we need some example in docs with very short but clear notice. Or maybe we should not add |
My point is that a
We can recommend developers to use
This makes sense as a starting point. I think a |
Hello! I found the KeyUX interesting. But I don't quite agree with using the
role="menu"
for widgets with arrow navigation. According to the ARIA specification,role="menu"
represents vertical (by default) or horizontal (when usingaria-orientation="horizontal"
orrole="menubar"
) sets of actions that users can invoke. This is similar to the command menu bar in most desktop applications. But it's not a set of navigation links or tabs as described in README.This stems from a misunderstanding of the term "menu" in natural usage (as panel with links) and the term "menu" from the ARIA specification (as set of invokers). Also more about menu pattern describes in ARIA AGP. It also gives an example of a navigation menu with a
role="menu"
, but warns that this role is not entirely suitable in this case, although it can be applied.For navigation aids
role="navigation"
+role="link"
(<nav>
and<a>
elements in HTML) should be used. For tabsrole="tablist"
+role="tab"
+role="tabpanel"
(there is no alternative in HTML) should be used. There are also many patterns that use arrow navigation between grouped elements instead of tab-key: listbox, toolbar, menubar, radiogroup, grid, etc. I think that using a single abstraction likerole="menu"
as an arrow navigation indicator, as in KeyUX, is not the best way.Instead, I propose to look at focusgroup proposal from the OpenUI group and the focusgroup polyfill for this proposal by Microsoft Edge team and make a similar or the same (for future compatibility with the focusgroup standard). This approach will allow developers to use suitable ARIA roles for different patterns and combine them with KeyUX arrow navigation.
The text was updated successfully, but these errors were encountered: