我正在处理一个使用 ReactJS 的项目,我想修改主题。我在为我的主题样式编写 css 选择器时遇到了问题。看起来 reactjs 使用了一些 shadow dom,这会破坏跨组件的 css 选择器。看起来聚合物使用了 shadow dom,它打破了跨组件的 css 选择器(按设计)。
<div id="root" class="light-theme">
<style>
.light-theme .bg-theme {
background-color: white;
}
</style>
<parent-element>
<child-element class="bg-theme">
</child-element>
</parent-element>
</div>
我希望child-element
的背景颜色根据我添加到根元素的类而改变。
PS - 该项目也使用了polymer.js,这可能是shadow dom的来源吗?
更新
经过一些研究,并看到下面的答案之一,聚合物确实是影子 dom 的原因。