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

时间:2017-05-17 06:08:58

标签: javascript html css

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

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

body { margin: 0; }

它可以将SPA的身体边距改为0,这是不可取的。

所以问题是:如何防止这样的第三方CSS代码“泄漏”到父元素?

要解决此问题,我当然可以使用iframe。但是我想尽可能远离它。

有干净解决方案的想法吗?

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

谢谢!

1 个答案:

答案 0 :(得分:1)

不,根据我的知识,除了iframe之外没有其他方法可以阻止其他css文件影响你的

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

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