如何在Angular 2材质中将div的背景色设置为主主题色

如何在Angular 2材质中将div的背景色设置为主主题色,angular,angular-material2,Angular,Angular Material2,我正在使用angular 2材质的主题之一。我能够使用color=“primary”在按钮、工具栏等材质组件上使用主题颜色。但是我不知道如何设置div的主题。我不想硬编码.css文件中的哈希,因为如果我决定更改主题,它将需要在所有位置进行更改。我错过什么了吗?最好的方法是什么?事实上,您不能在每个HTML元素上使用color=“primary” 我所做的是一个名为color primary @import '~@angular/material/theming'; @include mat-co

我正在使用angular 2材质的主题之一。我能够使用color=“primary”在按钮、工具栏等材质组件上使用主题颜色。但是我不知道如何设置div的主题。我不想硬编码.css文件中的哈希,因为如果我决定更改主题,它将需要在所有位置进行更改。我错过什么了吗?最好的方法是什么?

事实上,您不能在每个HTML元素上使用
color=“primary”

我所做的是一个名为
color primary

@import '~@angular/material/theming';
@include mat-core();

$primary: mat-palette($mat-deep-purple, 600, 500, 900);
$accent: mat-palette($mat-amber, A400, A300, A600);


.color-primary {
  color: mat-color($primary);
}

.color-accent {
  color: mat-color($accent);
}
当然,我已经在这里设置了颜色,但是您可以创建另一个类,例如:
background color primary


(这里是我的示例项目的链接:)。

最好的方法是使用已定义的背景和前景选项板。如果愿意,可以添加属性


看来我必须使用SCSS。到现在为止,我一直在用CSS做所有的事情。你知道有没有CSS的解决方案?没有,对不起,我只知道如何使用SCS。好。。。事实上,你可以静态地定义它,但如果你改变主题,它不会改变它。。。您真的应该使用scss;)另外,你不必在一开始就改变任何东西,你可以一步一步地使用sccs功能,让你的生活更轻松:)我只是在最初的版本中静态地做了,但它违背了主题化本身的全部目的。现在我换成了scss,一切都很好。谢谢,虽然有点断章取义,但你知道我在哪里可以找到我可以使用的材料类别的参考/文档,如mat-ELVATION-z5等。很高兴你这么做了,scss很棒,你会喜欢的。快速查看其文档,以便更好地了解您可以做什么;)不,我不。。。还很年轻,我们还没有拥有一切:)如果你的应用程序还很小,也许你想使用或;)