问题描述
我在Ubuntu 10.10安装中安装了深色的GTK主题,并为我也喜欢的Firefox安装了角色。
问题是Firefox将我的深色GTK主题用于普通网页上的按钮和文本字段之类的项目,并且通常会创建不可读的菜单,文本区域和按钮。 (白色背景上的白色文本,或黑色按钮上的黑色文本)。
我不想更改任何一个主题,因为它们在其他所有应用程序中看起来都很不错,并且我不想对我的Firefox安装做一些疯狂的事情,例如使用自定义用户脚本或CSS替代。
我要做的就是告诉Firefox完全停止使用我的GTK主题。这似乎是Google的Chrome浏览器所做的事情,到目前为止,这是最有意义的。
Web开发人员如何解决所有可能的GTK主题?
最佳方案
使用以下命令之一启动Firefox:
-
GTK3 Firefox 46+:
env GTK_THEME=Adwaita:light firefox
-
GTK2 Firefox< 46:
env GTK2_RC_FILES=/usr/share/themes/Simple/gtk-2.0/gtkrc firefox
这将使用Simple /Adwaita:light主题启动Firefox,这是非常基本的主题,应与您的Persona融合。您可以尝试其他主题,方法是将Simple替换为主题名称,但这并不适用于所有主题。
到目前为止,我已经成功测试了Simple和Redmond主题…
之前
后
次佳方案
永久解决方案:
您可以在about:config中指定一个浅色GTK主题以用于呈现网页。这很棒,因为您的系统主题仍将适用于菜单等,但是网页将以明亮的主题呈现。
-
在Firefox浏览器中导航到
about:config
-
右键单击并选择new->字符串
-
输入
widget.content.gtk-theme-override
作为名称 -
输入您已在系统上安装的浅色GTK主题作为值。例如
Arc
-
重新启动Firefox。
另请参阅https://bugzilla.mozilla.org/show_bug.cgi?id=1283086
第三种方案
我想在answer of @lovinglinux中添加一种方法,使Firefox从任务栏而不是命令行中的启动器打开时可以加载主题:
-
将/usr/share/applications/firefox.desktop编辑为sudo,
-
在”Exec”行中,使用上述@lovinglinux提供的指令,用命令将”=”之后的值替换为:bash -c’GTK2_RC_FILES = /usr /share /themes /Redmond /gtk-2.0 /gtkrc firefox%u’
结果是这样的:
第四种方案
更新:我的原始答案实际上在Firefox更新时被覆盖。
我目前(永久)的解决方案
编辑~/.mozilla/firefox/abcdef.default/chrome/userContent.css
(其中abcdef是随机字符串)
加
input:not(.urlbar-input):not(.textbox-input):not(.form-control):not([type='checkbox']):not([type='radio']), textarea, select {
-moz-appearance: none !important;
background-color: #eee;
color: #111;
}
原始答案
我找到了一种使Firefox完全忽略您的GTK主题的解决方案。
编辑/usr/share/applications/firefox.desktop
并进行更改
Exec=firefox %u
至
Exec=bash -c 'GTK_THEME=" " firefox %u'
当您重新启动FF时,它将仅使用FF主题。