EDIT 1)
以下代码适用于所有与背景\扩展相关的 DOM 和 css
清单.json
定义了所有权限的简单 json 结构
{
"name": "My extension",
"version": "1.0",
"permissions": [
"http://*/*", "tabs", "https://*/*"
],
"browser_action": {
"default_icon": "icon.jpg",
"default_popup":"popup.html"
},
"manifest_version": 2
}
弹出窗口.html
浏览器操作弹出窗口的链接样式表
<html>
<head>
<link rel="stylesheet" href="styles.css"></link>
</head>
<body>
</body>
</html>
样式.css
使用 url() 作为图像路径
body{
width : 500px;
height: 500px;
background-image: url('img/icon.jpg');
}
如果仍然失败请告诉我
![enter image description here](https://i.stack.imgur.com/nCerV.png)
EDIT 2)
用于通过内容注入图像
解决方案一)
Using 这个转换器,您将图像转换为 base64 字符串,然后可以将它们用作
{ 背景图像: url(数据:image/png;base64,iVBORw ........ };
解决方案b)
以下代码将不起作用,因为
{
background-image:url(chrome.extension.getURL('img/icon.jpg'));
}
chrome.extension.getURL()对于 css 来说是未定义的。
所以,我使用js来注入背景图像\任何图像URL(因为它们有动态URL)
清单.json
简单的 json 结构,为内容脚本和 CSS 定义了所有权限
{
"name": "My extension",
"version": "1.0",
"permissions": [
"http://*/*", "tabs", "https://*/*"
],
"content_scripts": [
{
"matches": ["<all_urls>"],
"js":["content.js"],
"css": ["styles.css"]
}
],
"web_accessible_resources": [
"img/icon.jpg"
],
"manifest_version": 2
}
内容.js
作为一个简单的用例,准备了一个 div 并添加了背景图像属性
var newdiv = document.createElement('div');
newdiv.setAttribute("id", "moot450");
document.body.appendChild(newdiv);
document.getElementById('moot450').style.backgroundImage = "url(" + chrome.extension.getURL('img/icon.jpg') + ")";
样式.css
注入另一个 css 来精炼注入的 div
#moot450{
position:absolute;
width:500px;
height:500px;
/*background-image:url(chrome-extension://faaligkhohdchiijdkcokpefpancidoo/img/icon.jpg);*/
}
OUTPUT
注入后从 Google Page 截取的屏幕截图
![enter image description here](https://i.stack.imgur.com/6KLQr.png)
如果您需要更多信息或者失败,请告诉我。