
垂直菜单(vertical menus)引入了新的形状(shapes)、色彩样式(color styles)、选择状态(selection states),以及更精细的子菜单动效(submenu motion)。
在 Android 上可以使用间隔(gaps),以获得更灵活的布局。
变体(Variants):
色彩样式(Color styles):

颜色(Color):新的颜色映射(color mappings),并与动态颜色(dynamic color)兼容
变体(Variants):下拉菜单(dropdown menu)与外露下拉菜单(exposed dropdown menu)现在都统一称为菜单(menu),因为它们的差异仅在于用于打开菜单表面(menu surface)的元素不同

M2(左图):旧版菜单颜色与背景对比不足(Former menu colors don’t contrast with the background)
M3(右图):菜单采用新的颜色映射(color mappings)并支持动态颜色(dynamic color)
使用垂直菜单(vertical menus)以获得更具表现力的外观与体验,包括圆角(rounded corners)、标准与鲜明两种色彩样式(standard and vibrant color styles)、更多的选择状态(selection states),以及子菜单动效(submenu motion)。

① 带间隔(gap)的垂直菜单(Vertical menu)
② 带分隔线(divider)的垂直菜单(Vertical menu)
在 M3 Expressive 中,基线菜单(baseline menu)仍然可用,但不包含最新的形状(shapes)、色彩样式(color styles)、选择状态(selection states)与动效(motion)。查看基线菜单规格(baseline menu specs)。

| 变体(Variant) | M3 | M3 Expressive |
|---|---|---|
| 垂直菜单(Vertical menus) | -- | 可用(Available) |
| 菜单(基线)(Menu ( baseline)) | 可用(Available) | 可用(Available) |

| 类别(Category) | 配置(Configuration) | M3 | M3 Expressive |
|---|---|---|---|
| 颜色(Color) | 标准(Standard) | 可用(Available) | 可用(Available) |
| 颜色(Color) | 鲜明(Vibrant) | -- | 可用(Available) |
| 布局(Layout) | 标准(Standard) | 可用(Available) | 可用(Available) |
| 布局(Layout) | 分组(Grouped) | -- | 可用(Available) |

① 菜单项(Menu item)
② 前置图标(Leading icon,可选)
③ 菜单项文本(Menu item text)
④ 后置图标(Trailing icon,可选)
⑤ 徽标(Badge,可选)
⑥ 后置文本(Trailing text,可选)
⑦ 容器(Container)
⑧ 辅助文本(Supporting text,可选)
⑨ 标签文本(Label text,可选)
⑩ 间隔(Gap,可选)
⑪ 分隔线(Divider,可选)
颜色值通过设计令牌(design tokens)来实现。对设计师而言,这意味着你要使用与令牌相对应的颜色值进行工作。对实现而言,一个颜色值会是一个令牌,用来引用某个具体的值。
菜单(Menus)有两种颜色映射(color mappings):
这些映射提供了低或高视觉强调度的选择。鲜明菜单(Vibrant menus)更突出,因此应谨慎使用。


用于浅色与深色主题的垂直菜单(Vertical menus)颜色角色如下:
① 表面变体上的颜色(On surface variant)
② 表面上的颜色(On surface)
③ 表面上的颜色(状态层)(On surface (state layer))
④ 低表面容器(Surface container low)
⑤ 表面变体上的颜色(On surface variant)
⑥ 表面变体上的颜色(On surface variant)
⑦ 第三级容器(已选中)(Tertiary container (selected))
⑧ 第三级容器上的颜色(已选中)(On tertiary container (selected))
⑨ 表面变体上的颜色(On surface variant)
⑩ 表面变体上的颜色(On surface variant)