我有一个单页应用程序(SPA)需要将一些第三方HTML / CSS代码作为字符串加载,并将其插入到页面的某个位置。我们完全无法控制第三方代码的编写方式。如果CSS代码的开发创建了一些适用于通用元素的规则,那么可能会破坏我们的SPA样式。
例如,这样的规则可以包含在第三方CSS代码中:
body { margin: 0; }
它可以将SPA的身体边距改为0,这是不可取的。
所以问题是:如何防止这样的第三方CSS代码“泄漏”到父元素?
要解决此问题,我当然可以使用iframe。但是我想尽可能远离它。
有干净解决方案的想法吗?
更新:也许Shadow DOM可以提供帮助吗?
谢谢!
答案 0 :(得分:1)
不,根据我的知识,除了iframe之外没有其他方法可以阻止其他css文件影响你的
但我建议您与其他开发人员进行良好沟通,并提供不会影响您的代码以及固定开发人员问题的解决方案。
无论如何,您可以使用css优先级覆盖这些更改,希望它有帮助...