角材料:如何使用主题的所有颜色

时间:2019-03-16 13:13:48

标签: angular angular-material angular-material-7 angular-material-theming

我正在使用角度7中的角材料。

在此之前,我曾在angular-1中使用过角材料,并且它为所有colors的用户提供了一种方式(md-colors)。

但是对于7号角材料,我无法找到这类属性。

当我们在按钮之类的组件中使用颜色

<button mat-raised-button color="primary">Primary</button>

在颜色上,我们只能使用主要的,带有口音和警告的托盘。但是我想使用更多的这三种颜色。我想要一种使用所有材料主题颜色的方法,就像我们在angular-material-1中使用的

谁能告诉我我在这里想念什么。所有颜色变量都存在于@angular/material/theming.scss中。但是我不确定如何使用这些颜色。

1 个答案:

答案 0 :(得分:0)

具有相同的问题,到目前为止,对于color属性,不能使用与primary,accent和warn不同的值。不过,github上有一个与此相关的功能请求:Support additional colors outside primary, accent, warn

不过,您可以使用多个主题,并根据父类应用每个主题,如here所述。

或者您可以按照here的说明将每个主题仅应用于特定组件。

在两种情况下,您都可以选择要用于每个主题的调色板,还可以创建自己的自定义调色板。

另一个选择是使用CSS变量。您可以在styles.css上定义颜色,然后在css文件中使用:

/* styles.css */
:root {
  --color-1: #003422;
}

/* component.css */
button {
  background-color: var(--color-1);
}