暗影穿透后代组合,' / deep /' ,包括' :: shadow'伪元素,正在被弃用,那么我们如何刺穿Shadow DOM?

时间:2016-01-09 21:53:13

标签: javascript css css3 web-component shadow-dom

让我们说我们有一些CSS代码,类似于动画CSS加载器,我们希望在所有使用Shadow DOM的Web组件中使用它们。如果我们无法像::shadow/deep/一样刺穿Shadow DOM,我们如何重新使用此CSS代码?

我们甚至无法在影子DOM中添加<link />,因此目前我强制要通过多个<style>代码复制代码。

我真的想知道针对此类用例建议的最佳做法。

谢谢。

1 个答案:

答案 0 :(得分:4)

我建议您在阴影根目录中使用css @imports来加载外部样式表,而不是使用<link />
我已经就这个主题写了一个答案here。请在下面引用它作为参考。

  

您可以创建一个style.css并通过put将其导入组件中   模板中的css @import。不会有多个网络电话,   因为浏览器会在第一个组件加载时缓存它   对于后续组件,它将从缓存中选取。