这个问题类似于其他一些在计算器上,但我找不到任何答案描述适用于我的情况和非过时的方法(和我开始想,也许有对这种情况没有什么好的解决办法)。
比方说,我们有一些main.css的文件,其中包括按钮,列表,链接等常用的样式。 所以,这只是一些标准的CSS文件,其中包含我们想要在整个应用程序重用常见的款式。 我们要应用相同的样式与影子DOM Web组件。
有几个方法,我知道,来实现这一目标:
- 使用过时的方法之一:::阴影,>>>,/深/选择器。 但是,这些选择是由现在已废弃,所以我想这不是前进与不错的办法。
- 使用CSS变量。 这种做法有利于定制的目的,如果我们需要设置一些属性。 但是,如果我们想从迁移文件的main.css 10-20常见的样式是太复杂了。
- 使用@import声明或内阴影DOM的“链接”标签。 它会工作,但它会复制所有样式的所有组件。 如果我们有10个Web组件,我们将结束的一模一样款式10名重复。 这听起来不像是足够好的解决方案了。 特别是如果我们有很多共同的风格,听起来像它可以从性能的角度来看不好解决。
- 不要使用阴影DOM在所有和使用全局样式:)但它不是当前问题的解决方案。
我也查了如何在角框架解决同样的问题(我查角第5版)。 当我设置的封装行为到本机,它只是实际复制样式(如在#3如上所述),我认为是不是最好的方式(但也许是最好的现有方式)。
因此,没有人知道是否有任何其他方式来解决这个问题,而上述缺点描述? 它只是听起来像影子DOM的电流缺点比它试图解决带来更多的问题。