javascript - 内容脚本样式表泄漏到页面中

标签 javascript jquery html css google-chrome-extension

我正在开发一个扩展。用户双击页面上的某个术语并通过侧面板弹出窗口获取数据。
我得到的数据被格式化并存储在一个名为 innerDiv 的 div 中,其类为 inner-div,它是附加到正文中的 div 的子级。
js 部分工作正常,但该页面的 css 覆盖了我的 css,而且扩展样式表泄漏到页面中。它是双向的。

.inner-div{
  position: relative;
  overflow-y: auto;
  color: wheat;
  height: 90%;
  width: 100%;
  text-align: justify;
  font-size: 16px;
}

.inner-div p, h1, h2 , h3, article{
  margin-bottom: 10px;
  color: wheat;
  text-decoration: none;
  border: none;
}

如您所见,我已尽可能使我的 CSS 具体化。因此,具有不同类的 dom 的页面无法继承我的 css。

css渗入页面图片

enter image description here

dom元素和类的图片

enter image description here

我不明白为什么扩展 css 会泄漏到页面中。请帮忙!

编辑:

根据建议将 div 名称更改为更具体的 extension-inner-div。问题仍然存在。

enter image description here

list .json:

{
    "manifest_version" : 2,

    "name" : "QWiki",
    "description" : "", 
    "version" : "1.0",

    "browser_action" : {
      "default_popup" : "Wiki_Viewer.html",
      "default_title" : "QWiki"
    },

    "content_scripts" : [{
      "css": ["inject.css"],
      "matches": ["http://*/*" , "https://*/*"],
      "js" : ["jquery.min.js" , "inject.js"]
    }],

    "permissions" : [
      "activeTab",
      "https://en.wikipedia.org/*"
    ]
}   

最佳答案

只是撞Beslinda N's comment ,我遇到了这个问题,通过采纳该建议并从 content_scripts 中删除我的 CSS 文件解决了这个问题。

虽然这可能会破坏您的某些扩展 - 因为您可能希望使用自定义 CSS 来设置普通页面的样式。为了解决这个问题,我创建了两个 CSS 文件,internal.cssexternal.css。内部文件包含我的 popup.html 的所有样式,外部文件包含我实际想要应用于扩展用户的 DOM 的 CSS。最后,我在 content_scripts 中仅引用了 external.css

关于javascript - 内容脚本样式表泄漏到页面中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42138552/

相关文章:

html - 我的 jsp 背景图像在 chrome 中工作正常,但它不适合在 jboss 浏览器中显示

javascript - 仅当 jQgrid 中未单击复选框时才清除先前的选择?

javascript - 绑定(bind)子模型以在 Backbone /Marionette 中查看

jquery - 通过id加载事件对象

javascript - <meta> 标签是否必须在支持 i18n 的站点上进行翻译?

javascript - 如何在文档准备好和图像加载后调用函数?

javascript - 如何在动画元素 onScroll 时获得准确的滚动位置

javascript - 扩展 native 类型的 ES6 类使 instanceof 在某些 JavaScript 引擎中表现异常?

javascript - 使用 ReactJS 自动选择 span 标签

javascript - 一起使用 <a href> 链接和 <onclick> 功能