如何将常见的CSS样式同时应用于多个Shadow Roots?

时间:2016-12-05 11:41:31

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

考虑一下,我有很少的元素使用Shadow DOM隐藏它们的内部div-soup和布局。

即使他们与众不同,他们也会共享相同的CSS样式表,因为他们使用的是相同的元素集,这些元素应该以一致的方式进行样式设置。例如,这可能是一个CSS框架(bootstrap)。

问题是这个样式表非常大。

在许多暗影之间(在SD V1中)分享如此大样式表的最有效方法是什么?

1 个答案:

答案 0 :(得分:6)

  

更新:2019 - 使用可构造的样式表

自2019年起,Constructable样式表是将样式表应用于影子DOM和Web组件的方法。阅读更多about it here

上一个回答:

您可以在Shadow DOM中定义的<body ng-app="appa"> <div id="map_canvas" ng-controller="mainCtrl"> <ui-gmap-google-map center="map.center" zoom="map.zoom"> <marker> <marker ng-repeat=" pos in markers" position="{{pos.lat}},{{pos.lng}}"></marker> </ui-gmap-google-map> </div>元素的第一行使用import CSS规则:

<style>

然后在Shadow DOM根目录中导入<div id=D1></div> <template id=T1> <style> @import url( '/css/stylesheet.css' ) </style> ... </template> <template>

content