使用:: ng-deep选择器时如何通过ID为元素应用样式

R15

我有两个checkboxangular-material我想同时checkbox使用::ng-deep选择器来应用不同的样式

这是我的代码

<section class="example-section">
<mat-checkbox id=" #matCh" class="example-margin" [(ngModel)]="checked">Checked</mat-checkbox>
<mat-checkbox id=" #matCh2"  class="example-margin" [(ngModel)]="indeterminate">Indeterminate</mat-checkbox>
</section>

这是风格

<style id="matCh">
 ::ng-deep .mat-checkbox-checked.mat-accent .mat-checkbox-background,.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
  } 
  
 ::ng-deep
   .mat-checkbox-background,.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
  }
</style>


<style id="matCh2">
  ::ng-deep .mat-checkbox-checked.mat-accent .mat-checkbox-background,.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
     background-color: green;
   } 
   
  ::ng-deep
    .mat-checkbox-background,.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
     background-color:green;
   }
 </style>

我也尝试过这种方式,但green显示颜色

<style>
 #matCh ::ng-deep .mat-checkbox-checked.mat-accent .mat-checkbox-background,.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
  } 
  
 #matCh ::ng-deep
   .mat-checkbox-background,.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
  }
</style>

它总是显示green颜色,checkbox而不是red我怎样才能解决这个问题

aviboy2006

Stackblitz:https ://stackblitz.com/edit/angular-xxgcrb ? file = src/app/checkbox-configurable-example.css

您必须使用不同的CSS类进行标识。为什么总是让绿色变成绿色,因为由于两个复选框都缺少唯一标识符,因此最后一个CSS会覆盖绿色。

html

<section class="example-section">
<mat-checkbox id="#matCh"   class="example-margin firstone" [(ngModel)]="checked">Checked</mat-checkbox>
<mat-checkbox id="#matCh2"    class="example-margin secondone" [(ngModel)]="indeterminate">Indeterminate</mat-checkbox>
</section>

css:

::ng-deep .firstone.mat-checkbox-checked.mat-accent .mat-checkbox-background,
.firstone.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
}
::ng-deep .firstone .mat-checkbox-background,
.firstone.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
}
::ng-deep .secondone.mat-checkbox-checked.mat-accent .mat-checkbox-background,
.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: green;
}
::ng-deep .secondone .mat-checkbox-background,
.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: green;
}

甚至您也可以id用作上述注释中所述的唯一标识符。删除您id和#中的空间,并使用:

::ng-deep #matCh.mat-checkbox-checked.mat-accent .mat-checkbox-background,
#matCh.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
}
::ng-deep #matCh .mat-checkbox-background,
#matCh.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: red;
}
::ng-deep #matCh2.mat-checkbox-checked.mat-accent .mat-checkbox-background,
.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: green;
}
::ng-deep #matCh2 .mat-checkbox-background,
.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {
    background-color: green;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用 ng-class 为 HTML 标签添加 ID(选择器)

来自分类Dev

如何通过在“属性以选择器开始”中为ID使用变量来选择jQuery中的元素

来自分类Dev

如何从选择器B中的选择器A使用ng-template

来自分类Dev

InvalidSelectorException:消息:无效选择器:使用Selenium单击div ng-click元素时指定了无效或非法选择器错误

来自分类Dev

使用多个NG Bootstrap日期选择器时按钮的焦点混乱

来自分类Dev

如何使用ng-style设置元素宽度%的样式

来自分类Dev

如何通过硒使用CSS选择器查找元素

来自分类Dev

如何在单击时使用ng-style更新元素样式

来自分类Dev

在Angular JS中使用ng-print时如何应用css样式

来自分类Dev

如何使用not选择器定位ID中的元素?

来自分类Dev

如何使用ng-pattern

来自分类Dev

如何使用* ng渲染组件

来自分类Dev

如何使用ng-show,ng-change和ng-class样式验证提示/错误

来自分类Dev

如何使用ng-show,ng-change和ng-class样式验证提示/错误

来自分类Dev

如何使用Angular填充选择ng选项

来自分类Dev

在选择中使用ng-options或ng-repeat?

来自分类Dev

在ng-controller之外使用ng元素

来自分类Dev

使用ng-if时ng-click停止工作

来自分类Dev

使用ng-if时ng-class的分阶段行为

来自分类Dev

如何在更改YouTube视频时使用ng-hide / ng-show或ng-style

来自分类Dev

当动态键值为数组时如何使用ng-repeat

来自分类Dev

如何使用CSS 2.0选择器通过在父元素上设置的属性来选择元素?

来自分类Dev

如何在ng-repeat中使用ng-if?

来自分类Dev

如何使用ng-class ng-click删除类?

来自分类Dev

使用Angular ng-if旋转样式

来自分类Dev

使用ng-click通过ng-show和ng-repeat显示正确的文章

来自分类Dev

在ng-repeat内使用伪选择器和伪指令的问题

来自分类Dev

将带角度的日期选择器与ng-repeat一起使用

来自分类Dev

Ng2-smart-table :在字段中使用日期选择器格式

Related 相关文章

  1. 1

    如何使用 ng-class 为 HTML 标签添加 ID(选择器)

  2. 2

    如何通过在“属性以选择器开始”中为ID使用变量来选择jQuery中的元素

  3. 3

    如何从选择器B中的选择器A使用ng-template

  4. 4

    InvalidSelectorException:消息:无效选择器:使用Selenium单击div ng-click元素时指定了无效或非法选择器错误

  5. 5

    使用多个NG Bootstrap日期选择器时按钮的焦点混乱

  6. 6

    如何使用ng-style设置元素宽度%的样式

  7. 7

    如何通过硒使用CSS选择器查找元素

  8. 8

    如何在单击时使用ng-style更新元素样式

  9. 9

    在Angular JS中使用ng-print时如何应用css样式

  10. 10

    如何使用not选择器定位ID中的元素?

  11. 11

    如何使用ng-pattern

  12. 12

    如何使用* ng渲染组件

  13. 13

    如何使用ng-show,ng-change和ng-class样式验证提示/错误

  14. 14

    如何使用ng-show,ng-change和ng-class样式验证提示/错误

  15. 15

    如何使用Angular填充选择ng选项

  16. 16

    在选择中使用ng-options或ng-repeat?

  17. 17

    在ng-controller之外使用ng元素

  18. 18

    使用ng-if时ng-click停止工作

  19. 19

    使用ng-if时ng-class的分阶段行为

  20. 20

    如何在更改YouTube视频时使用ng-hide / ng-show或ng-style

  21. 21

    当动态键值为数组时如何使用ng-repeat

  22. 22

    如何使用CSS 2.0选择器通过在父元素上设置的属性来选择元素?

  23. 23

    如何在ng-repeat中使用ng-if?

  24. 24

    如何使用ng-class ng-click删除类?

  25. 25

    使用Angular ng-if旋转样式

  26. 26

    使用ng-click通过ng-show和ng-repeat显示正确的文章

  27. 27

    在ng-repeat内使用伪选择器和伪指令的问题

  28. 28

    将带角度的日期选择器与ng-repeat一起使用

  29. 29

    Ng2-smart-table :在字段中使用日期选择器格式

热门标签

归档