Правильный способ управления цветами элементов углового материала - использовать разные палитры, но функциональность ограничена.Если вам нужен больший контроль, вы можете добавить пользовательский CSS, и в большинстве случаев вам нужно будет использовать ::ng-deep
, чтобы применить ваши стили, например:
::ng-deep .mat-checkbox .mat-checkbox-frame {
border-color: violet;
}
Вот это DEMO , где я поменял цвет рамки и фона при его проверке.Вы можете использовать этот способ для реализации любого стиля.
Если вы не знакомы с ::ng-deep
и не понимаете, когда вам это нужно, вы можете просмотреть ЭТОТ короткий ответ.
ОБНОВЛЕНИЕ 1
Есть еще один способ через отключение инкапсуляции (благодаря @Ventura).Он имеет право на существование, но будьте осторожны, если вы решили отключить инкапсуляцию, не путайте с таблицами стилей, поскольку он ведет себя не так, как вы ожидаете от стандартной логики в отношении CSS.
Для получения дополнительной информации: https://coryrylan.com/blog/css-encapsulation-with-angular-components
SO ответ: https://stackoverflow.com/a/54981478/6053654
ОБНОВЛЕНИЕ 2
Метод устарел, дополнительную информацию см. Здесь: https://angular.io/guide/component-styles#deprecated-deep--and-ng-deep.