Reputation: 32094
I'm really really new to angular material theming. actually started around 30 minutes ago! :)
so I am able to set the primary, accent and warn colors.
now I'm trying to set the text input color in my theme.
no actual idea how to do that properly...
I inspected the mat-input
element and noticed that the placeholder
label's color is set by the following classes:
mat-form-field-appearance-legacy
and mat-form-field-label
.
I created the following theme file:
@import '~@angular/material/theming';
// Plus imports for other components in your app.
// Include the common styles for Angular Material. We include this here so that you only
// have to load a single css file for Angular Material in your app.
// Be sure that you only ever include this mixin once!
@include mat-core();
// Define the palettes for your theme using the Material Design palettes available in palette.scss
// (imported above). For each palette, you can optionally specify a default, lighter, and darker
// hue. Available color palettes: https://material.io/design/color/
$candy-app-primary: mat-palette($mat-indigo);
$candy-app-accent: mat-palette($mat-pink, A200, A100, A400);
// The warn palette is optional (defaults to red).
$candy-app-warn: mat-palette($mat-amber);
// Create the theme object (a Sass map containing all of the palettes).
$candy-app-theme: mat-light-theme($candy-app-primary, $candy-app-accent, $candy-app-warn);
// Include theme styles for core and each component used in your app.
// Alternatively, you can import and @include the theme mixins for each component
// that you are using.
.mat-form-field-appearance-legacy .mat-form-field-label {
color: white;
}
@include angular-material-theme($candy-app-theme);
this did not affect the mat-input
placeholder color at all.
so I'm trying to understand how to properly set inputs colors with themeing.
any ideas regarding this issue would be greatly appreciated.
Upvotes: 2
Views: 2479
Reputation: 26710
Consider checking out the Customizing Component Styles guide before beginning.
Anyways, you've got to use the !important
styles as your styles will be overridden by Angular Material's styles:
// ...
.mat-form-field-appearance-legacy .mat-form-field-label {
color: white !important;
}
Upvotes: 1