IE11 中的点亮元素,自定义元素外部的 css 样式会影响内部样式



在我的应用程序中为 p 元素设置 css 样式只会影响 IE11 中 lit-element 内的 p 元素。

我已经设置了一个非常基本的堆栈闪电战示例来显示问题。当您在IE11中打开它时,您会注意到自定义元素p文本是斜体的,该样式来自外部。在其他浏览器中,这不会发生。

这是一个已知问题,并且无法阻止 IE11 的问题吗?或者有没有办法解决这个问题?

我已经在我这边重现了这个问题,有可能是IE浏览器的默认行为。因为外部的CSS样式是全局样式。

作为一种解决方法,您可以更改选择器以阻止它们与您不希望它们匹配的元素匹配。如以下示例(使用类选择器添加 CSS 样式(:

索引.html页中的代码:

<style>
.outer-p { font-style: italic; }
</style>
</head>
<body>
<p class="outer-p">Text outside element</p>
<my-element></my-element>
</body>

自定义元素中的代码(my-element.js(

class MyElement extends LitElement {
static get styles() {
return css`
.inner-p { display:block; font-weight: 900; color: #ff9900; }
`;
}
render() {
return html`
<p class="inner-p">Hello world! From my-element</p>
`;
}
}

最新更新