You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Material 15.1.2中如何让mat-nav-list内mat-list-item与mat-icon居中对齐

解决Material 15.1.2中mat-list-item图标与文本垂直居中对齐的问题

针对你遇到的mat-nav-list内mat-list-item的mat-icon和锚文本无法垂直居中的问题,结合Material 15改用flex布局的特性,提供以下几种解决思路:

思路1:修改flex容器的对齐属性

Material 15的mat-list-item内部使用mdc-list-item__content作为flex容器,默认对齐规则可能导致文本偏移。通过自定义CSS强制设置垂直居中:

/* 给mat-list-item添加自定义类名,比如align-center-item */
.align-center-item .mdc-list-item__content {
  align-items: center;
}

模板中给a标签添加该类:

<a mat-list-item routerLink="/signup" class="align-center-item">
  <mat-icon>face</mat-icon>
  <span matLine>Sign up</span>
</a>

思路2:移除matLine的默认上边距

matLine指令默认会给span添加margin-top,这是文本偏移的常见原因。直接覆盖该样式:

span[matLine] {
  margin-top: 0 !important;
}

若不想全局覆盖,可结合自定义类:

.align-center-item span[matLine] {
  margin-top: 0;
}

思路3:调整图标的垂直对齐方式

如果flex布局调整不生效,可直接给mat-icon设置垂直对齐属性,让它和文本处于同一基线:

.align-center-item mat-icon {
  vertical-align: middle;
}

以上方法均可解决图标与文本的垂直居中问题,优先推荐思路1,它符合flex布局的设计逻辑,不会破坏组件原有结构。

内容的提问来源于stack exchange,提问作者KenB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 22:25:41