如何让 Firefox 的「标签页」和「地址栏」遵守 GTK 的字体设置?

在过去的时代,火狐浏览器的菜单、工具栏、地址栏以及对话框里的字体一直跟随 GTK, 因为它的用户界面基于 GTK Widget. 后来许多设置对话框 HTML 化,变成了网页的形式。然后好像是从 78 版前后开始,标签页和地址栏似乎开始 HTML 化,用上了网页字体。并且标签页上的字体还显示粗体,但偶尔又显示非粗体。弄不懂它的规律,反正那两个地方的字体不再跟随 GTK. 菜单和工具栏等地方依然跟随 GTK, 但能坚持多久就不知道了,说不定以后菜单也 HTML 化。

被这个问题困扰多年了,有无什么办法解决?

F12,设置里「启用浏览器界面及附加组件的调试工具箱」及「启用远程调试」。然后我不确定要不要重启浏览器。然后按 Ctrl-Alt-Shift-i,跟调试网页字体一样去调试它。

谢谢您的解答。我按照你给出的方法试了,但看不懂。因为我不懂 Web 开发,对 HTML 和 JavaScript 只有非常少的了解。

只是觉得可能不是这里的问题,因为地址栏 URL 的字体也并非像老版火狐那样用的 GKT 设置。或许新的 HTML 和 JavaScript 技术允许网页指定标题 titile 的字体,然后火狐就按照网页给出的字体去设置标签页头上的字体。但不管怎样,地址栏里的字体总不可能被网页指定吧?现在的新版火狐的地址栏字体不再跟随 GTK 的设置。

比如用火狐打开一个纯文本文件:

file:///home/smith/Test.txt

这时标签页头上显示:“/home/smith/Test.txt”,并且可能是由于纯文本文件的原因,标签页头的字体跟随 GTK. 但哪怕是这种情况,地址栏里的那串 file:///home/smith/Test.txt 的字体依然不跟随 GKT。

另外我还发现如果打开的网页属于那种没有 CSS 和 JavaScript 的简单静态网页,比如:

http://mirrors.ustc.edu.cn/debian/

这时标签页头上的字体也跟随 GTK, 不会变化。当然地址栏的字体一直不跟随 GTK.

我在 about:config 里用 font 去搜索,没找到什么信息。

你要不截个图?

论坛的图片上传功能似乎有问题,我只能上传到 “图床”。两个截图的链接分别是:

第一个是:

http://mirrors.ustc.edu.cn/debian/

的截图,第二个是它的上级网页:

http://mirrors.ustc.edu.cn/

的截图。

我的 GKT 字体是 Unifont 点阵字体,可以看到:菜单栏以及第一个网页的标签页头都使用了 Unifont 字体,都跟随 GTK. 而第二个网页的标签页头里的字体明显加粗了。

当然,两个截图里的地址栏 URL 字体都没跟随 GTK

原来是这样……

这里其实都是使用的同一个字体,也并没有粗体。这里的差别是,菜单栏和第一个标签页上的字没有做反锯齿处理,而其它地方的做了灰度平滑。

这里的规律是:包含透明背景的元素的字做了灰度平滑,而不包含透明背景的就没有。我只知道如果背景透明,那么火狐会不做次像素平滑。但是没理由非要做灰度平滑。建议向火狐报告 bug。

1赞

Unfifont 是点阵字体,不应该去做 “抗锯齿处理” 的。

那 地址栏 URL Bar 呢?

应该是火狐经常对界面进行修改的原因,导致每次升级总是要调整适应一番,弄得好麻烦。

地址栏大概哪里也有半透明。