我花了一整天的时间来处理这个如此微不足道的事情,但仍然不能 做这个工作。出现一个巨大的奇怪图像而不是我的图标。如果我取出toolbarbutton-1类,则根本不会出现任何图像。以下是重要的事情:(这将是一个非常长的帖子......)
我的XUL在toolbarpalette上只包含一个工具栏按钮:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://ytweaks/skin/style.css" type="text/
css"?>
<overlay id="yTweaks" xmlns="http://www.mozilla.org/keymaster/
gatekeeper/there.is.only.xul">
<script src="main.js" />
<toolbarpalette id="BrowserToolbarPalette">
<toolbarbutton id="ytweaks-main-button" class="toolbarbutton-1
chromeclass-toolbar-additional"
type="menu"
label="yTweaks"
tooltiptext="yTweaks"
state="enabled">
</toolbarbutton>
</toolbarpalette>
</overlay>
CSS与MDN教程中的CSS相同:
#ytweaks-main-button {
list-style-image: url("chrome://ytweaks/skin/icon.large.png");
}
toolbar[iconsize="small"] #ytweaks-main-button {
list-style-image: url("chrome://ytweaks/skin/icon.small.png");
}
清单文件如下所示:
content ytweaks chrome/content/
overlay chrome://browser/content/browser.xul chrome://ytweaks/content/ui.xul
skin ytweaks classic/1.0 skin/classic/ytweaks/
style chrome://global/content/customizeToolbar.xul chrome://ytweaks/skin/style.css
文件夹结构:
chrome
|-- content
| |-- ui.xul
| |-- main.js
|-- skin
|-- classic
|-- ytweaks
|-- icon.large.png
|-- icon.small.png
|-- style.css
最后,结果如下:
完全不是我制作的相同图标。这是我应该出现的图标( 大一):
另外,我该如何调试这些东西?例如,我该如何浏览 chrome注册表。如果我在firefox中输入chrome URI没有任何反应。 除了浏览器的主要XUL文件加载另一个完整 浏览器。
答案 0 :(得分:2)
原来这是由于路径无效:
skin ytweaks classic/1.0 skin/classic/ytweaks/
..应该是:
skin ytweaks classic/1.0 chrome/skin/classic/ytweaks/
Re:调试。我测试了3件事:
style
行)。我不知道你怎么能在这里调试拼写错误。No chrome package registered for chrome://aaa/skin/aaa.css
消息,则Chrome.manifest中的skin
声明未得到处理,或者我的示例中的“提供商”名称(aaa
)与“skin”File not found. Firefox can't find the file at chrome://aaa/skin/bbb.css
(如您的情况),则表示skin
声明的路径部分不正确。它应该是相对于chrome.manifest(和以/结尾的iirc)答案 1 :(得分:0)
根据您上面提供的信息,如果这是您的路径ytweaks/skin/icon.small.png
,但您的文件夹结构是
|-- ytweaks
|-- icon.large.png
|-- icon.small.png
|-- style.css
然后我觉得你错过了skin
中的ytweaks
子文件夹,或者你的图片路径中不应该有这个。