如何设置活动标签的样式?
我尝试使用它,但是对我来说不起作用:
::ng-deep mat-tab-label-active{
background-color: red;
}
答案 0 :(得分:2)
您可能忘记了.
,请尝试.mat-tab-label-active
。
如果这不起作用,请尝试用!important
强制使用。
不确定是否需要::ng-deep
答案 1 :(得分:1)
DrNio所说的可能是正确的,但此答案也应有所帮助:https://stackoverflow.com/a/45941592/7653320
它告诉您在Component中设置encapsulation: ViewEncapsulation.None
,然后就可以在不使用::ng-deep
的情况下设置标签的样式。
答案 2 :(得分:1)
如果您尝试在自己的组件的scss
中为角垫组件设置任何颜色,这将总是失败。因为所有角垫组件颜色,例如warn
,primary
等的颜色,都用!important
设置。
要覆盖它们,请使用!important
:(在您自己组件的scss
中)
.mat-tab-label-active {
background-color: red !important;
}
或在全局styles.scss
中设置颜色:
.mat-tab-label-active {
background-color: red;
//does not require "!important"
}
全局样式scss
的优先级高于角垫组件中的color !important
内部设置,因此您无需添加!important
答案 3 :(得分:1)
我们不应该使用ng-deep,它是已弃用的影子穿刺后代组合器的一部分,该组合器将从主要浏览器中删除。
https://angular.io/guide/component-styles#deprecated-deep--and-ng-deep
您应该只可以参考.mat-tab-label-active .myCustomClass。但是,您可能还需要确保将视图封装设置为none。