在 Angular 2 中,我试图从其容器的样式表中设置组件实例的样式
<my-container>
<my-component>
<span>some text</span>
</my-component>
</my-container>
很显然,我已经ViewEncapsulation.None
入驻了my-component.ts
。
我的容器样式:
:host /deep/ span {
color: red;
}
基本上我很困惑,禁用 ViewEncapsulation 后,选择器仍然需要/deep/
跨度来获取红色样式。除此之外,我有点不确定我应该使用哪种类型的选择器,/deep/
并且::shadow
据说已被弃用。战场上剩下的,似乎只有三重>
合体了>>>
。
反过来,手写笔或 WebStorm 似乎都不支持/理解这一点。结果是重新格式化代码完全破坏了样式代码。
除了我正在使用的方法之外,还有其他方法可以为我的 span 元素编码 css/styl 选择器吗?
编辑
在尝试研究未来的计划时,我查看了规范草案- 就在第 3.2.6 节之前,它说:
对于外部文档中的样式表,选择器 x-foo >>> span 选择所有三个元素:#top、#not-top 和 #nested。
但随后它指出:
穿透阴影的后代组合器是选择器的静态配置文件的一部分,而不是动态配置文件的一部分。这意味着它可以在例如 querySelector() 方法中使用,但在 stylesheets 中使用时无效。
我不明白。