防止嵌入式第三方 CSS 泄漏到没有 iframe 的父级



我有一个单页应用程序(SPA(,它需要加载一些第三方HTML/CSS代码作为字符串,并将其插入页面上的某个位置。我们完全无法控制第三方代码的编写方式。如果 CSS 代码的开发创建了一些适用于通用元素的规则,这可能会弄乱我们的 SPA 样式。

例如,这样的规则可以出现在第三方 CSS 代码中:

body { margin: 0; }

它可以将我们的SPA的身体边距更改为0,这是不希望的。

那么问题来了:如何防止这样的第三方CSS代码"泄漏"到父元素?

为了解决这个问题,我当然可以使用 iframe。但我想尽可能长时间地远离它。

对清洁解决方案有任何想法吗?

更新:也许Shadow DOM可以提供帮助?

谢谢!

不,据我所知,除了 iframe 之外,没有这样的方法可以防止其他 css 文件影响您的

但我建议您与其他开发人员进行良好的沟通,并提供不会影响您的代码以及修复开发人员问题的解决方案。

无论如何,您可以使用CSS优先级来覆盖这些更改,希望对您有所帮助...

最新更新