Contact emails
d...@chromium.org

Explainer
https://open-ui.org/components/menu.explainer
https://www.scottohara.me/blog/2021/10/21/menu.html


Specification
None


Summary

A menu is a way to group menu items together and provide users the ability to 
execute commands. The existing <menu> element represents a “toolbar” listing of 
commands, and despite its name, it is not programmatically exposed as a "menu" 
or "menubar" to accessibility tools, or the web platform. Furthermore, there is 
no native support to make listed commands look and behave cohesively. New menu 
elements make it easier for developers to follow ARIA practices on menu and 
menubar, while taking advantage of new web platform features that underpin menu 
systems. These elements include `<menubar>`, `<menulist>`, and `<menuitem>` 
elements. These elements expand on the baseline behaviors popover and anchor 
positioning provide, and come with expected keyboard navigation behavior out of 
the box, ensuring consistent experiences for users of all kinds, on the 
platform they are engaging with.



Blink component
Blink>DOM


Motivation

Menus are a ubiquitous design pattern seen across the web, but they notoriously 
lack accessibility and consistency. We propose a new set of menu elements that 
prioritize familiar keyboard navigation behavior and accessibility, and that 
are built on top of new web platform features to support the menu use case (eg, 
popover, anchor positioning, etc).



Initial public proposal
https://open-ui.org/components/menu.explainer/


TAG review
None


TAG review status
Pending


Risks




Interoperability and Compatibility

None


Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signals:


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it 
has potentially high risk for Android WebView-based applications?

None




Debuggability

None



Is this feature fully tested by web-platform-tests?
No


Flag name on about://flags
None


Finch feature name
None


Non-finch justification
None


Requires code in //chrome?
False


Estimated milestones

No milestones specified



Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5206029088063488?gate=5197848047779840


This intent message was generated by Chrome Platform Status.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/68485361.2b0a0220.311ec.0132.GAE%40google.com.

Reply via email to