我正在写一个firefox扩展,它显示一个包含一些文本的状态栏。我想根据消息更改statusbarpanel的背景颜色。例如红色背景的错误。
var pnl = document.getElementById("panelId"); pnl.label = "OK"; pnl.style.color = "white"; pnl.style.backgroundColor = "green";
除了最后一行之外,上述所有代码都有效,这不会导致任何变化。属性的实际值会更改,但statusbarpanel仍会显示默认状态栏颜色。我也尝试了background
而不是backgroundColor
,但这没有帮助。
答案 0 :(得分:2)
尝试将-moz-appearance CSS属性设置为'none'
或'none !important'
答案 1 :(得分:2)
与之前的解决方案类似,但仅使用javascript:
var pnl = document.getElementById("panelId");
pnl.label = "OK";
pnl.style.color = "white";
pnl.style.backgroundColor = "green";
pnl.style.MozAppearance = "none"
请注意,执行此操作后,您几乎必须再次从头开始设置样式,并且它可能也会丢失它的操作系统特定样式。