css - 重置第三方库中使用的 Angular 组件的样式
问题描述
语境
我正在使用一个提供用户界面组件的 Angular 库(为了示例,我们假设它是Angular Material Library)。
组件的功能(逻辑、API 等)完全符合我的需求,但我想应用我自己的样式,例如通过提供应用不同样式的全局 CSS 样式。以 Angular Material 的按钮组件为例,这可以通过将以下代码添加到全局styles.scss
-File 中来相当简单地实现:
button[mat-button] {
color: red;
// Arbitrary styles ...
}
问题
这迫使我“反对”为特定组件定义的样式。我想重置来自库的所有(特定于组件的)样式。否则,我将不得不使用大量unset
偶尔的!important
语句来手动重置/覆盖先前定义的样式。
问题
有没有办法正确重置 Angular 组件的样式?例如,通过阻止 Angular 将这些样式一起写入<style>
-Tag?
为了完整起见(以及对于将来遇到这个问题的读者),我觉得重要的是要注意我所要求的不是做事的“角度方式”:组件应该自己运行,理想情况下是你把它当作一个黑盒子——重新设计一些东西不符合那个范式。在我正在研究的特定情况下,权衡似乎证明了这种行动方案的合理性。
解决方案
推荐阅读
- c - 在 Visual Studio Code 中,如何绕过错误限制?“超出错误限制”
- c# - 仅当表稳定时,一旦 SQL Server 表上的数据发生更改,如何在 C# 中触发函数?
- java - 为什么这个 while 循环条件不停止循环?
- python - Pandas Ordered Categorical 未按预期工作
- mysql - 如何在mysql中获取表的转置
- r - 在 R 中,在字符串中,有没有办法为正则表达式中被视为特殊的字符添加双反斜杠
- python - Python - 保存到 PDF 屏幕未在 chrome 85.0.4183.102 中显示
- c++ - 无论如何,如果条件与 C++ 模板一起链接多个?
- python - 类型错误:__init__() 缺少 1 个必需的位置参数:“单位”'
- python - 以下用于求幂的分治递归算法是否比用于大数的迭代算法更有效?