Re: [-Fx-] 版號100之後Mactype部分功能失效解法

作者: crescent3 (C3)   2022-11-03 08:27:42
: → Kuge: 有些網頁使用特殊圖標 若你的字型不支援就無法正確顯示 11/02 22:15
: 推 leon19790602: 對,最簡單測試就是巴哈動畫瘋,取消優先使用網頁 11/02 22:18
: → leon19790602: 字型,基本上都會一堆亂碼 11/02 22:18
: 推 leon19790602: https://i.imgur.com/22t7AS0.jpg 11/02 22:21
這可以避免 只是設定會複雜很多
首先重設「優先使用頁面指定的字型」的設定
也就是重設 browser.display.use_document_fonts 為預設值1
然後在以下各個檔案加入對應的內容
範例用的是思源體(個人比較喜歡蘋方體)
等寬字用 Cascadia Mono
1. perfs.js:
https://pastebin.com/Uj3ac7CF
其實就是改about:config裡面的字體fallback列表
如果直接複製貼上的話要先關閉Firefox才行(記得備份)
不然就是自己開about:config一條條手動改
其中zh-TW的fallback特別多 因為這是適用於正體中文版的設定
網頁如果是UTF-8時會用瀏覽器預設語言的fallback
如果你裝的不是正體中文版可能需要調整
或者試試改 font.language.group
另外有些情況可能需額外設定
user_pref("layout.css.system-ui.enabled", false);
設為false會讓以下CSS的值無效化 換句話說就是不讓CSS用系統UI字型
font-family: system-ui;
例如pixiv就有用到
2. userChrome.css:
https://pastebin.com/4aD2VEk2
這是改Firefox本身的UI字型
3. userContent.css:
https://pastebin.com/aDnUKRwG
利用@font-face規則取代網頁顯示的字型
這裡是把常用的中文和日文字體都取代為思源體
三項改完基本上就涵蓋絕大多數狀況了
但有些網頁例外 例如微軟帳號的登入頁面
不知道是不是bug
總之就是網頁本身的font-family列表太長時 @font-face規則會失效
這時可以在userContent.css加入以下規則
@-moz-document domain(login.microsoftonline.com), domain(login.live.com) {
body { font-family: unset !important }
}
其中domain表示針對特定網域
以上修改的優點是不用靠第三方程式 可以跨平台
沒取代的部分會尊重網頁字型和fallback列表 所以不會影響特殊符號
不需要套件 但如果習慣用Stylus也可以把userContent.css的內容移過去
缺點是設定複雜而且零散 debug有點麻煩
而且僅限於Firefox

Links booklink

Contact Us: admin [ a t ] ucptt.com