首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何调整角度材质的数据报头样式?

如何调整角度材质的数据报头样式?
EN

Stack Overflow用户
提问于 2022-02-25 14:32:12
回答 2查看 156关注 0票数 -2

我正在尝试在我的应用程序中的多个位置使用角材料数据报警器。其中一种用法是对应用程序正常工作至关重要的遗留用法。它被大量使用,根本不应该被修改。其他用法是较新的实现,最终将在所有功能完成后取代遗留使用。新的数据启动器隐藏在功能标志后面,可以在应用程序运行时进行修改。我们注意到,当试图对数据报警器进行样式设计时,我们一直在使用ng::deep!important来对角材料类进行样式化。然而,这种影响似乎是全球性的,因为它也在改变遗留的数据报警器。

我们如何将我们的SCSS更改限制在一个数据链路上,而不影响其他的?

项目结构

代码语言:javascript
复制
app
|
----calendar-1
    |
    ----calendar-1.html
    ----calendar-1.scss
    ----calendar-1.ts
|
----calendar-2
    |
    ----calendar-2.html
    ----calendar-2.scss
    ----calendar-2.ts

问题

代码语言:javascript
复制
// calendar-2/calendar-2.scss

::ng-deep {
    mat-calendar {
      background-color: green;
      margin-top: -16px;
      width: 258px;
    }
}

calendar-1calendar-2都被更新以反映::ng-deep部分中calendar-2/calendar-2.scss中的样式,因为它们的目标是相同的角材料类名。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-02-26 15:57:39

请您重新表述您的问题,并添加一些代码或图片以更好地理解,但是可以使用自定义类来实现,比如您想要更改样式的datepicker,将一个自定义类(firstDatePicker)添加到mat-form-field中,并按如下方式添加样式

代码语言:javascript
复制
::ng-deep .firstDatePicker .mat-datepicker-toggle .mat-icon-button {color: #6c01e1 !important}
票数 1
EN

Stack Overflow用户

发布于 2022-02-28 19:35:58

经过几个小时的努力,解决方案实际上相当简单。我们必须将ng::deep引用移动到另一个特定于组件的选择器中,这样样式就不会在全局应用。

代码语言:javascript
复制
<!-- calendar-2/calendar-2.html -->

<div class="calendar-2">
    <mat-calendar
      [dateFilter]="dateFilter"
      [selected]="selected"
      [startAt]="startAt"
      [minDate]="minDate"
      [maxDate]="maxDate"
      (selectedChange)="selectedChange($event)"
    >
    </mat-calendar>
</div>
代码语言:javascript
复制
// calendar-2/calendar-2.scss

.calendar-2 {
    ::ng-deep {
        mat-calendar {
          background-color: green;
          margin-top: -16px;
          width: 258px;
        }
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71267367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档