我正在构建一个附加组件,到目前为止已经在附加组件的css文件中完成了所有样式(而不是单独的皮肤包)。我现在需要覆盖用于滚动条手柄和菜单箭头之类的图像文件。
Mozilla有一个教程,可以使用存储在omni.jar
文件中的主题覆盖这些主题,但我们宁愿在我们安装扩展程序时避免创建单独的主题。
根据DOM Inspector,滚动条从chrome://global/skin/scrollbars.css
获取它的样式,规则是:
scrollbar {
-moz-appearance: scrollbartrack-horizontal;
-moz-binding: url("chrome://global/content/bindings/scrollbar.xml#scrollbar");
cursor: default;
background: url("chrome://global/skin/scrollbar/slider.gif") scrollbar;
pointer-events: auto;
}
scrollbar[root="true"] {
position: relative;
z-index: 2147483647; /* largest positive value of a signed 32-bit integer */
}
scrollbar[orient="vertical"]
{
-moz-appearance: scrollbartrack-vertical;
}
我试过用我的附加组件中的滚动条戳:
scrollbar{
-moz-appearance:none!important;
background-image:none!important;
background:red!important;
background-color: green !important;
height:200px;
border:3px solid green;
}
scrollbar slider{
-moz-appearance:none!important;
background:red!important;
height:200px;
border:3px solid green;
}
scrollbar, thumb {
-moz-appearance: none !important;
background:red!important;
}
scrollbarbutton {
-moz-appearance: none !important;
background-color: transparent !important;
}
但与其他响应加载项的css文件覆盖的XUL元素不同,这些滚动条只是不响应任何内容。我想知道问题的一部分是滚动条是否在浏览器窗口内?
如何从插件中更改或覆盖皮肤图像?