css - 在材质组件中将组件特定样式设置为生成的 HTML
问题描述
我在组件中添加了一个无线电组:
<div class="auction-filter-wrapper">
<mat-radio-group class="auction-filter" (change)="onChange($event)">
<mat-radio-button class="auction-filter-button" value="0">Both</mat-radio-button>
<mat-radio-button class="auction-filter-button" value="Bid">Bid</mat-radio-button>
<mat-radio-button class="auction-filter-button" value="BuyNow">Buy Now</mat-radio-button>
</mat-radio-group>
</div>
这会在站点中呈现以下 HTML:
<div _ngcontent-c32="" class="auction-filter-wrapper">
<mat-radio-group _ngcontent-c32="" class="auction-filter mat-radio-group" role="radiogroup">
<mat-radio-button _ngcontent-c32="" class="auction-filter-button mat-radio-button mat-accent" value="0"
ng-reflect-value="0" id="mat-radio-2"><label class="mat-radio-label" for="mat-radio-2-input">
<div class="mat-radio-container">
<div class="mat-radio-outer-circle"></div>
<div class="mat-radio-inner-circle"></div>
<div class="mat-radio-ripple mat-ripple" mat-ripple="" ng-reflect-centered="true" ng-reflect-radius="23"
ng-reflect-animation="[object Object]" ng-reflect-disabled="false" ng-reflect-trigger="[object HTMLLabelElement]"></div>
</div><input class="mat-radio-input cdk-visually-hidden" type="radio" id="mat-radio-2-input" tabindex="0" name="mat-radio-group-0">
<div class="mat-radio-label-content"><span style="display:none"> </span>Both</div>
</label></mat-radio-button>
<mat-radio-button _ngcontent-c32="" class="auction-filter-button mat-radio-button mat-accent" value="Bid"
ng-reflect-value="Bid" id="mat-radio-3"><label class="mat-radio-label" for="mat-radio-3-input">
<div class="mat-radio-container">
<div class="mat-radio-outer-circle"></div>
<div class="mat-radio-inner-circle"></div>
<div class="mat-radio-ripple mat-ripple" mat-ripple="" ng-reflect-centered="true" ng-reflect-radius="23"
ng-reflect-animation="[object Object]" ng-reflect-disabled="false" ng-reflect-trigger="[object HTMLLabelElement]"></div>
</div><input class="mat-radio-input cdk-visually-hidden" type="radio" id="mat-radio-3-input" tabindex="0" name="mat-radio-group-0">
<div class="mat-radio-label-content"><span style="display:none"> </span>Bid</div>
</label></mat-radio-button>
<mat-radio-button _ngcontent-c32="" class="auction-filter-button mat-radio-button mat-accent" value="BuyNow"
ng-reflect-value="BuyNow" id="mat-radio-4"><label class="mat-radio-label" for="mat-radio-4-input">
<div class="mat-radio-container">
<div class="mat-radio-outer-circle"></div>
<div class="mat-radio-inner-circle"></div>
<div class="mat-radio-ripple mat-ripple" mat-ripple="" ng-reflect-centered="true" ng-reflect-radius="23"
ng-reflect-animation="[object Object]" ng-reflect-disabled="false" ng-reflect-trigger="[object HTMLLabelElement]"></div>
</div><input class="mat-radio-input cdk-visually-hidden" type="radio" id="mat-radio-4-input" tabindex="0" name="mat-radio-group-0">
<div class="mat-radio-label-content"><span style="display:none"> </span>Buy Now</div>
</label></mat-radio-button>
</mat-radio-group>
</div>
如何为以下元素指定组件范围样式:<label class="mat-radio-label" for="mat-radio-2-input">
?
我试过这样的事情:
:host {
.auction-filter-button {
::ngdeep {
label {
padding-left: 0 !important;
}
}
}
}
和
:host {
.auction-filter-button {
label {
padding-left: 0 !important;
}
}
}
但是选择器是错误的。
在不全局设置样式的情况下访问这些节点和设置样式的正确方法是什么?有可能还是全局风格是唯一的方法?
解决方案
愚蠢的错误。我正在使用::ngdeep
而不是::ng-deep
.
推荐阅读
- sql - 如何将 first_value 与重置一起使用
- python - 在 Python 中面临十进制到二进制的问题:转换错误
- timescaledb - 使用 time_bucket 并在 timescaledb 中加入多个表
- javascript - 第一次挂载显示列表数组为空,但页面刷新填充它并呈现数据
- dataframe - 比较 2 个数据帧
- spring-cloud - 使用 Eureka Server 作为后备
- python - 如何从while循环中提取最后两个值
- python - 用于捕获大写字母组的 Python 正则表达式帮助
- pytube - 如何使用 Pytube 下载音乐文件的播放列表?
- python - 如何绘制一个区域并从 df 列绘制一条线?