我正在使用以下方式注册自定义图标:
addCustomMaterialIcon(name: string, url: string) {
this.matIconRegistry.addSvgIcon(
name,
this.domSanitizer.bypassSecurityTrustResourceUrl(`${url}`)
);
}
并与
一起使用<mat-icon svgIcon="vl-icon" class="y-icon" color="primary"></mat-icon>
但是该图标为白色且看不见。如何更改其颜色?
尝试过CSS没有运气:
.y-icon svg {
fill: yellowgreen!important;
}
预先感谢
答案 0 :(得分:1)
您可以使用 :: ng-deep ,但现在它已贬值,而不必查看:host-context
::ng-deep .y-icon {
fill: yellowgreen !important;
}
了解更多详细信息-https://angular.io/guide/component-styles#deprecated-deep--and-ng-deep
答案 1 :(得分:0)
@Vugar Abdullayev,您是否尝试过::ng-deep
尝试
::ng-deep .y-icon svg {
fill: yellowgreen !important;
}
编辑:
::ng-deep .y-icon {
fill: yellowgreen !important;
}
答案 2 :(得分:0)
您可以执行以下操作来更改mat-icon svgIcon
的颜色
HTML
在CSS中设置mat-
前缀,但是在将其分配给color
属性时将其忽略。
<mat-icon svgIcon="thumbs-up" color="y-icon"></mat-icon>
CSS
.mat-y-icon {
color: yellowgreen;
}
Stackblitz
https://stackblitz.com/edit/angular-taqtkq?embed=1&file=app/icon-svg-example.css