通过chrome-extension添加@ font-face样式表规则的推荐方法是什么?问题是字体嵌入的url位于扩展内,所以我必须在javascript中使用才能使用chrome.extension.getURL.
我尝试document.styleSheets[0].addRule过内容脚本,但是没有用.为了澄清,我也有web_accessible_resources下列出的字体.
javascript css font-face google-chrome-extension content-script
我正在使用Firefox Add-on SDK创建扩展程序并执行PageMod.这段代码在main.js.
...
exports.main = function() {
var pageMod = require("sdk/page-mod");
pageMod.PageMod({
include: "*",
contentScriptWhen: 'end',
contentStyleFile: [
self.data.url("css/style.css"),
self.data.url("css/font-awesome.css")
],
contentScriptFile: [
self.data.url("js/jquery.js"),
self.data.url("js/spritzify.js")
],
onAttach: function onAttach(worker) {
worker.postMessage("Hello World");
}
});
};
...
Run Code Online (Sandbox Code Playgroud)
css/font-awesome.css虽然字体文件没有,但我会加载到页面中.
@font-face {
font-family: 'FontAwesome';
src: url('fonts/fontawesome-webfont.eot?v=4.1.0');
src: url('fonts/fontawesome-webfont.eot?#iefix&v=4.1.0') format('embedded-opentype'), url('fonts/fontawesome-webfont.woff?v=4.1.0') format('woff'), url('fonts/fontawesome-webfont.ttf?v=4.1.0') format('truetype'), url('fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
Run Code Online (Sandbox Code Playgroud)
fonts文件夹位于我的扩展程序的数据文件夹中.有人可以解释我如何使用PageMod将自定义字体加载到网页中!
我正在使用内容脚本将一些HTML注入网页.我正在尝试使用谷歌字体,CabinCondensed-Regular,以及从IcoMoon获得的一些图标字体.我已经下载的文件和我,包括他们与CSS @font-face,因为我可以告诉它的速度更快,但我不知道如何将它们纳入在manifest.json.通常你可以通过"content_scripts"指定一个文件:[
{
"matches": [ "<all_urls>"],
"css":["style.css", "jquery-ui.css"],
"js":["jquery-2.1.0.min.js", "index.js", "jquery-ui.min.js"],
}
Run Code Online (Sandbox Code Playgroud)
但据我所知,字体没有特定的标签,那么如何包含ttf文件呢?
javascript css font-face google-chrome-extension content-script