Цвет значка изменения шагового двигателя углового материала

Я использую угловой 6 и угловой материал. Я использую мат-степпер из углового материала. хотите изменить цвет матового значка для шагов по умолчанию, активных и посещенных. Может ли кто-нибудь помочь с этим, пожалуйста?

:host /deep/ mat-horizontal-stepper .mat-horizontal-stepper-header-container .mat-step-icon {
    background-color: "red" !important;
    color: #fff !important;
}

.mat-step-icon-selected,
.mat-step-icon-state-done,
.mat-step-icon-state-edit {
  background-color: "blue";
  color:#fff;
}  

Также пробовал с этим:

/deep/ mat-step-header.mat-horizontal-stepper-header > div.mat-step-icon-selected {
    background-color:'red';
}

Но не работает

Благодарность

Попробуйте использовать red вместо "red"stackblitz.com/edit/angular-zgsxg4?file=app/…

yurzui 07.02.2019 15:23
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
10
1
10 010
5
Перейти к ответу Данный вопрос помечен как решенный

Ответы 5

Ответ принят как подходящий

Я могу изменить цвет на красный с помощью следующего стиля в файле styles.css в корне проекта, а не в таблице стилей компонента.

.mat-step-header .mat-step-icon-selected, .mat-step-header .mat-step-icon-state-done, 
.mat-step-header .mat-step-icon-state-edit {
    background-color: red !important;
    color: red !important;
}

чтобы скрыть числа внутри каждого шага, просто используйте display none в стиле класса ng-star-inserted

.ng-star-inserted {display: none}

Это здорово работает. Как убрать цифры внутри круга т.е. саму иконку. я попробовал ниже. но изменения только для редактирования. не уверен, какие другие названия, такие как «готово», «редактировать»,... <ng-template matStepperIcon = "edit"> <mat-icon></mat-icon> </ng-template>

Mukil Deepthi 07.02.2019 15:33

Я изменил свои ответы, чтобы ответить на ваш вопрос о том, как удалить числа внутри круга.

mruanova 07.02.2019 15:37

благодаря. но это сжимает весь контроль, как только я добавил ng-start...

Mukil Deepthi 07.02.2019 15:42

Я уверен, что вы сами разберетесь теперь, когда я показал вам, как внести изменения в стиль степпера углового материала, спасибо :)

mruanova 07.02.2019 15:45

Я пытался использовать ответ @mruanova, и я великолепен, но я хочу сделать шаг красным только тогда, когда он выбран.

Если вы хотите применить красный цвет только при выборе шага, используйте приведенный ниже css в родительском файле стиля:

    .mat-step-icon-selected {
    background-color: red !important;
    color: red !important;
}

Решение со стилем компонента (с использованием инкапсуляции представления)

Примерно то же, что и @mruanova, но с использованием инкапсуляции представления, поэтому стили могут быть в компоненте, например. a-stepper.component.css:

/**
    Change color of stepper icon to green, when completed.
    - NOTE: requires 'encapsulation: ViewEncapsulation.None' in component definition
 */
.mat-step-header .mat-step-icon-state-done,
.mat-step-header .mat-step-icon-state-edit {
    background-color: green !important;
}

Просмотр инкапсуляции на компоненте:

@Component({
    selector: 'a-stepper',
    templateUrl: './a-stepper.component.html',
    styleUrls: ['./a-stepper.component.css'],
    providers: [{
        provide: STEPPER_GLOBAL_OPTIONS, useValue: {showError: true}
    }],
    encapsulation: ViewEncapsulation.None
})
export class AStepperComponent implements OnInit {

Примечание: также мой css немного отличается, поскольку влияет только на фон, поскольку я ставил зеленую галочку, а не редактировал с основной окраской.

Вы можете переопределить набор иконок прямо в HTML.

<mat-horizontal-stepper>
    <!-- Icon overrides. -->
    <ng-template matStepperIcon = "edit">
        <mat-icon>account_circle</mat-icon>
    </ng-template>
    <ng-template matStepperIcon = "active">
        <mat-icon>account_circle</mat-icon>
    </ng-template>
    <ng-template matStepperIcon = "done">
        <mat-icon>account_circle</mat-icon>
    </ng-template>
    <ng-template matStepperIcon = "number">
        <mat-icon>account_circle</mat-icon>
    </ng-template>
</mat-horizontal-stepper>

Он работает даже с потрясающим шрифтом:

<mat-horizontal-stepper>
    <!-- Icon overrides. -->
    <ng-template matStepperIcon = "edit">
        <i class = "fa fa-check-circle"></i>
    </ng-template>
    <ng-template matStepperIcon = "active">
        <i class = "fa fa-dot-circle-o"></i>
    </ng-template>
    <ng-template matStepperIcon = "done">
        <i class = "fa fa-dot-circle-o"></i>
    </ng-template>
    <ng-template matStepperIcon = "number">
        <i class = "fa fa-dot-circle-o"></i>
    </ng-template>
</mat-horizontal-stepper>

Для изменения цветов и других настроек, пожалуйста, проверьте https://stackoverflow.com/a/66428028/4184651

.mat-step-header .mat-step-icon-selected, .mat-step-header .mat-step-icon-state-done, .mat-step-header .mat-step-icon-state-edit { цвет фона: #673ab7; цвет: #fff; }

Разве это не то же самое, что и принятый ответ?! Похоже, тот же список классов.

Eric Aya 17.04.2021 20:04

Другие вопросы по теме