Css xul-没有或错误的工具栏按钮图像
我花了一整天的时间在这件小事上,但我还是做不到 让这一切顺利。一个巨大的奇怪的图像出现,而不是我的图标。如果我拿出toolbarbutton-1类,就不会出现任何图像。以下是所有重要的东西:(这将是一篇非常长的帖子…) My XUL仅包含工具栏调色板上的工具栏按钮:Css xul-没有或错误的工具栏按钮图像,css,firefox,firefox-addon,xul,Css,Firefox,Firefox Addon,Xul,我花了一整天的时间在这件小事上,但我还是做不到 让这一切顺利。一个巨大的奇怪的图像出现,而不是我的图标。如果我拿出toolbarbutton-1类,就不会出现任何图像。以下是所有重要的东西:(这将是一篇非常长的帖子…) My XUL仅包含工具栏调色板上的工具栏按钮: <?xml version="1.0"?> <?xml-stylesheet href="chrome://ytweaks/skin/style.css" type="text/ css"?> <ove
<?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>
清单文件如下所示:
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中键入一个ChromeURI,什么都不会发生。 除了浏览器的主XUL文件外,它会加载另一个完整的XUL文件
浏览器。根据您上面提供的信息,如果这是您的路径
ytweaks/skin/icon.small.png
,但您的文件夹结构是
|-- ytweaks
|-- icon.large.png
|-- icon.small.png
|-- style.css
然后,在我看来,您可能缺少
ytweaks
中的skin
子文件夹,或者您的图像路径中不应该有该子文件夹。这是因为此处的路径无效:
skin ytweaks classic/1.0 skin/classic/ytweaks/
…应该是:
skin ytweaks classic/1.0 chrome/skin/classic/ytweaks/
回复:调试。我会测试三件事:
- 使用您知道必须匹配的最简单规则,然后使用DOM检查器检查相关元素上的样式,以查看您的规则是否匹配。如果他们不知道,你的样式表因为某种原因没有被应用
- 仔细观察应用样式表的那一行(在您的例子中,它是chrome.manifest中的
行)。我不知道你怎么能在这里调试打字错误样式
- 通过位置栏打开样式表时,请检查样式表的chrome://URL是否正常工作。它应该显示css文件的文本。
- 如果您没有注册任何chrome软件包chrome://aaa/skin/aaa.css错误控制台中的消息,您在chrome.manifest中的
声明未得到处理,或者“提供者”名称(skin
,在上面的示例中)与在“skin”之后指定的“提供者”名称不匹配aaa
- 如果您在内容错误页面中看到
(与您的情况一样),这意味着文件未找到。Firefox在上找不到该文件chrome://aaa/skin/bbb.css
声明的路径部分不正确。它应该是相对于chrome.manifest(和以/结尾的iirc)皮肤
- 如果您没有注册任何chrome软件包chrome://aaa/skin/aaa.css错误控制台中的消息,您在chrome.manifest中的
skin ytweaks classic/1.0 chrome/skin/classic/ytweaks/