角度材质 mat-slide-toggle 更改切换图标

rod*_*_la 3 angular-material google-material-icons angular

我正在使用 angular6 来布局我的 UI。

默认的 mat-slide-toggle 按钮如下所示:

在此输入图像描述

但我希望切换按钮看起来像下面的材质图标toggle_on、toggle_off

在此输入图像描述

可以定制吗?

多谢。

Roy*_*Roy 5

您可以覆盖应用于 Material滑动切换组件的默认样式。我必须警告你,这样做有点狡猾。但是,这是我对您的屏幕截图的看法。

滑动切换示例

为此所需的样式:

.mat-slide-toggle-thumb {
    width: 10px !important;
    height: 10px !important;
    transform: translate(50%, 50%);
}

.mat-slide-toggle-bar {
  background-color: #000;
  border-radius: 15px !important;
  height: 16px !important;
}

.mat-slide-toggle-thumb-container {
  top: -2px !important;
}

.mat-slide-toggle.mat-checked:not(.mat-disabled) .mat-slide-toggle-bar {
  background-color: #000;
}

.mat-slide-toggle.mat-checked:not(.mat-disabled) .mat-slide-toggle-thumb {
  background-color: #fff;
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,!important需要一些东西来推翻 Angular 的 Material CSS 设置的默认样式。您可以在 StackBlitz 上查看示例。