<解決>FirefoxがuserChrome.css読み込まないバグ? 設定変更あり

animal_lesserpanda

Mozilla Firefox ブラウザのウィンドウ画面右上に見える 設定メニュー (=ハンバーガーメニュー)。

この設定メニューの見た目の外観デザインをちょいと変更できるので、ほとんど選択する機会のない不必要なメニュー項目をバッサリ削除して、ゴチャゴチャなメニューシンプル・コンパクトなメニュー にリフォームすることが実現できます。

czzリップボード
メニュー項目数が多いため縦に長い

zzクリップボード
使わない不要なメニュー項目を削除

そんな ”裏技” ”隠し機能” を手元の環境でニュルッと実現するのが、Firefox ブラウザ本体の UI を好き勝手にイジれるスタイルシート userChrome.css ファイルです。

【ブラウザ UI 用スタイルシート
userChrome.css

【ウェブサイトのコンテンツ表示用スタイルシート】
userContent.css

Firefox が userChrome.css userContent.css 読み込まない!?

そんな 「userChrome.css」 「userContent.css」 に関連して仕様の変更が行われました。

  • userChrome.css userContent.css
    使えない/機能しない/読み込まれない/読み込まない/反映されない
    → まさかの機能を撤去? バグ? 不具合?

Firefox の将来のバージョン、…具体的に 2019 年 9 月にリリースされる予定の バージョン 69.0 から 「css ファイルはデフォルトだと読み込まない」 ように切り替わり、「userChrome.css」 「userContent.css」 は読み込まないようになるとか。

xaクリップボード

> https://twitter.com/FirefoxNightly/status/1131287595563065344


狙いは Firefox 起動の高速化

ナゼこんなことを?

早とちりして誤解するユーザーさんが出現しそうだけど、将来的に 「userChrome.css」 「userContent.css」 の機能を廃止して、「userChrome.css」 「userContent.css」 を使ったデザイン変更を実現できないよう 嫌がらせ 布石かーい?

いやいや、そうではなく…

Users who use userChrome.css or userContent.css files to customize Firefox may need to flip the toolkit.legacyUserProfileCustomizations.stylesheets pref to true in order for Firefox to load these files. This is to avoid touching the disk unnecessarily during start-up for users that don't have those files.
https://www.mozilla.org/en-US/firefox/69.0a1/releasenotes/

現行バージョンは、「userChrome.css」 「userContent.css」 を使用しているか使用していないかに関わらず、Firefox ブラウザを起動するタイミングで、ストレージ上に 「userChrome.css」 「userContent.css」 が存在するか確認しているそうです。

つまり、「userChrome.css」 「userContent.css」 を使用していない多くの環境では、ファイル2つの存在を確認するためだけの処理を Firefox が起動する度に意味もなく毎回行っているワケです。 <無駄!


つまり、この変更は 不必要なディスクアクセスを止める ことで Firefox 起動時の処理量を少しでも減らし、高速化を意図する施策の一環で行われます。


この時点で、「userChrome.css」 「userContent.css」 のサポートを打ち切るプロジェクトは存在しません。



userChrome.css を使いたい? 設定変更で解決

今後も 「userChrome.css」 「userContent.css」 を使いたい Firefox ユーザーさんは、次のパラメータをあらかじめ設定しておくことで、今までどおりに css ファイルは読み込みます。

【user.js 設定ファイルの指定例】
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
【about:config 設定パラメータ】
toolkit.legacyUserProfileCustomizations.stylesheets

…ってことで、Firefox Quantum 69 以降を新規に導入するユーザーさんや、新しくプロファイルを作成したユーザーさんの中で、「userChrome.css」 「userContent.css」 を使う場合は手動で設定を切り替える作業が必須です。