css - 将不同样式应用于 Polymer 2.0 Web 组件的多个实例

标签 css polymer shadow-dom polymer-2.x custom-element

我使用 Polymer 2 创建了一个 Web 组件。它的代码使用 es5-bundled 预设转译为 ES5。该组件部署在 CDN 上,并在不使用 Polymer 的第三方页面上导入。

下面是一个用法示例:

https://noticeable-widget-demo.firebaseapp.com/issues/shadycss/index1.html

Web 组件 noticeable-widget 有 3 个实例。

如果样式在 custom-style 中定义,我可以成功应用自定义 CSS 类。但是,应用样式后,其他 2 个实例根本不显示。如果我删除 custom-style 定义,那么所有实例都会正确显示它们的默认样式:

https://noticeable-widget-demo.firebaseapp.com/issues/shadycss/index2.html

知道为什么会这样吗?我如何将不同的样式应用于同一自定义元素的不同实例?以及如何在定义 CSS 类时保持默认组件样式正常工作?

此外,如果我没有将style 定义放在custom-style 中,则定义的CSS 类对Chrome 没有影响。为什么?在reading the documentation之后,我知道自定义样式适用于未实现 Shadow DOM v1 的浏览器,但 Chrome 61 是,对吗?

最佳答案

这个问题似乎与 shadycss 的错误有关:

https://github.com/webcomponents/shadycss/issues/130

关于css - 将不同样式应用于 Polymer 2.0 Web 组件的多个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46288936/

相关文章:

css - iPhone 上的媒体查询

javascript - 在 textarea 中,在 webkit-transform 之后输入时自动滚动到底部不起作用

css - 根据路由在组件中加载不同的样式

github - 如何直接从 git master 分支部署 Web 应用程序

javascript - 可以使用 ShadowDOM 更改窗口/选项卡标题

css - 模具 |在组件中使用 CSS "+ Selector "

javascript - 使用 CSS 或 Javascript 填充动画

javascript - 动态更改点击属性

javascript - 完整渲染 DOM 的 Polymer 1.0 生命周期事件

html - 如何从文档中选择打开的 Shadow DOM 中的元素?