angular - 如何强制 Angular 不封装嵌套规则?
问题描述
我对样式的标题部分有简单的要求mat-tab-group
。以下规则适用更多然后罚款
mat-tab-group.buttons-tab {
> .mat-tab-header {
... some more rules
}
}
但是,这必须在全局 CSS 中完成,而我想将它封装在使用的组件中(因为这是唯一使用此自定义样式的地方)。Angular 正在封装buttons-tab
class ,但它.mat-tab-header
也在封装。这种封装阻止了规则的应用,因为内部mat-tab-headers
没有封装。关闭组件的封装不是一个选项,因为它包含更多需要封装的样式。
所以问题是
- 是否可以关闭嵌套规则的封装?
- 也许可以添加多个样式文件
@Component
并分别为每个文件设置封装。 - 使用全局样式(或关闭封装)是唯一可行的解决方案吗?
解决方案
在要防止视图封装的组件中,您可以放置代码(在 @Component 块内):
encapsulation: ViewEncapsulation.None
在此处阅读更多相关信息: https ://angular.io/guide/component-styles#view-encapsulation
推荐阅读
- python - 合并两个 JSONPath 查询
- node.js - Windows-1252 编码在 NodeJS 中被识别为 ISO-8859-2
- node.js - 我可以在不等待完成的情况下执行存储过程吗?
- google-chrome - 将 NWJS 从 0.37.3 升级到最新版本后,Google App ID 丢失
- python - 在分类之前预处理 sklearn 管道中的 y 列
- jwt - 访问令牌的定制算法
- java - PlantUML java自动化
- php - 用户'root'@'localhost'的访问被拒绝)
- angular - 如何从 Web Api 获取单个十进制值并使用 httpClient 在 Angular 10 中显示它
- pycharm - 解决 PyCharm 中的 git 冲突