css – 如何真正隔离Google Chrome扩展程序中的样式表?

前端之家收集整理的这篇文章主要介绍了css – 如何真正隔离Google Chrome扩展程序中的样式表?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我写了google chrome扩展,其中有自动填充字段的弹出对话框,它是自己的风格,但有一些网站,我的CSS完全破碎,看起来不是很好。

我知道使用iFrames隔离样式,但是在Google Chrome扩展中,无法以这种方式隔离我的HTML和CSS。另一种方法是将我所有的东西全部包装在分离的div中,并且它的id和相对样式为id,而且这样做,但是似乎在某些网站上似乎没有硬标签样式重载或“!important”指令CSS代码

所以我想知道有没有办法以方便的方式真正隔离我的风格,或者是我的不好的carma,以重载每一个小的CSS属性来修复每个站点上的一个或另一个风格的错误

顺便说一下:我设置了我的清单,以加载所有的东西在“document_end”,但我看到它不适用于在任何DOM准备好之前每次加载的样式表。

解决方法

在提出问题时,您唯一的选择是使用iframe或非常高的 specificity的样式表,并显式设置可能影响样式的所有属性。最后一个方法是非常麻烦的,因为总会有一些被你忽视的属性。因此,唯一可用于隔离样式表的方法是使用iframe。

解决这个问题 – 没有iframe的样式的隔离是Shadow DOM(since Chrome 25)。您可以在HTML5 Rocks找到一个教程。对于使用Shadow DOM隔离样式的现实Chrome扩展,请参阅Display #Anchors(source code here)。

猜你在找的CSS相关文章