图标尺寸演示
使用 自定义 → 主题 调整密度、图标尺寸倍率和来源内容比例。第一组遵循当前设置;对比表格会固定每列的密度,同时保留所选倍率和比例。虚线轮廓表示渲染后的来源画布,包括其内部留白。
当前设置
尺寸与密度
| size | density 0 | density -2 | density -4 | density 2 |
|---|---|---|---|---|
| extra-small | ||||
| small | ||||
| medium | ||||
| large | ||||
| extra-large |
图标来源与显式尺寸
Export 导出 · 1em
Export 导出 · 1em
Export 导出 · 1em
尺寸规则
与文本搭配的图标会根据相应排版角色的字号确定基准值及其范围。Button 使用对应尺寸的 label/title/headline 角色;Chip、Menu 和 Breadcrumb 使用 label-large;字段和 ListItem 使用 body-large;TreeView 使用 body-medium;navigation drawer 和 rail 条目分别使用 label-large 和 label-medium。随后密度会在该范围内按每级 1px 调整尺寸,再应用 --md-icon-scale。默认排版下,尺寸范围为基准值上下各 4px,且下限为 16px;范围会随排版角色缩放。
独立的 IconButton 和 Icon 仍使用基于尺寸的基准值。显式组件图标尺寸 token 和 Icon size 不受自动尺寸调整影响。行内图标跟随文本,不会随密度缩小。
:root {
--md-density: -2;
--md-icon-scale: 1;
}--md-icon-scale 接受 0.5 到 2 之间的倍率。它会改变默认布局尺寸,但不会缩放文字或复选框、单选框等选择控件的几何尺寸。控件现有的内容最小尺寸仍然生效。
来源校准
--md-icon-content-ratio 描述图标来源画布中可见内容的标称占比,范围为 0.1 到 1。这是光学校准值,不是 CSS 内边距,也不是针对每个字形测量的边界框。Material Symbols 使用标称参考值 5/6。SVG 插槽默认值为 1;若来源包含内部留白,可设置 contentRatio。
布局框会保持请求的尺寸。渲染后的来源会以 (5/6) / contentRatio 为倍率围绕中心缩放,从而保留周围间距和点击目标。因此,对于相同的布局尺寸,来源比例为 1 时绘制出的画布会比来源比例为 5/6 时更小。图形会保留各自的光学差异,不会裁切成完全相同的边界。
<Icon name="settings" />
<Icon :content-ratio="1">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
<path d="M12 1v22M1 12h22" />
</svg>
</Icon>局部 contentRatio 会覆盖继承的 CSS token。混用不同图标来源时,请在来源对应的 Icon 包装组件上设置比例。Material Symbols 还会使用独立于布局尺寸和校准值的光学尺寸轴,其范围限制在 20–48。
相对文本的图标
variant="inline" 保留相对文本的 1em 默认尺寸和中部对齐。