火狐强制深色模式需三步:一、设 layout.css.prefers-color-scheme.content-override=2 欺骗网页启用深色偏好;二、启用 toolkit.legacyuserprofilecustomizations.stylesheets 并配置 usercontent.css 覆盖样式;三、启用 ui.systemusesdarktheme=1 等系统级滤镜兜底。

您希望让那些根本没做深色模式适配的网站,比如老式企业后台、静态文档站、甚至某些政府门户,在火狐里也强制呈现护眼的深色视觉效果,而不是刺眼的纯白背景和黑字。
第一步:欺骗网页说“我永远要深色”
这一步让火狐向所有网页声明“用户偏好深色”,触发原生支持 prefers-color-scheme 的站点自动加载暗色CSS;对不支持的站点则为后续注入打下基础。
在地址栏输入 about:config 并回车 → 点击“接受风险并继续” → 在搜索框中输入 layout.css.prefers-color-scheme.content-override → 双击该项,将值改为 【2】(0=跟随网页、1=强制浅色、2=强制深色)。
注意:若该条目不存在,右键空白处→“新建”→“整数”,名称粘贴完整字段,值填 2。
第二步:注入全局护眼CSS覆盖原始样式
userContent.css 是火狐唯一允许你在渲染层直接重写网页样式的机制,能穿透内联样式、JS动态生成内容,甚至部分 Shadow DOM 封装元素。
方法一:手动创建并配置
第一步:在地址栏输入 about:support → 找到“配置文件夹”旁的“打开文件夹”按钮并点击。
第二步:在打开的文件夹中,新建名为 chrome 的子文件夹(若已存在则跳过)。
第三步:进入 chrome 文件夹,新建纯文本文件,命名为 userContent.css,用记事本或 VS Code 打开。
第四步:粘贴以下规则并保存:
@media (prefers-color-scheme: light) { body { background-color: #121212 !important; color: #e0e0e0 !important; } a:link { color: #4fc3f7 !important; } a:visited { color: #ba68c8 !important; } img, video { filter: brightness(0.92) contrast(1.05) !important; } * { box-shadow: none !important; } }
第五步:返回 about:config,搜索 toolkit.legacyUserProfileCustomizations.stylesheets,双击设为 【true】——否则 userContent.css 完全不会加载。
第三步:启用系统级深色滤镜作为兜底
当上述两步仍漏掉某些顽固元素(如 Canvas 渲染内容、WebGL 页面、iframe 子页),这个实验性滤镜会叠加一层轻量级 CSS 色调偏移,不依赖 JS 注入,GPU 友好。
在 about:config 中依次完成以下三项设置(全部需双击修改):
搜索 ui.systemUsesDarkTheme → 值改为 【1】;
搜索 widget.non-native-theme.enabled → 确保值为 【true】;
搜索 browser.display.use_system_colors → 值改为 【false】。
改完立即关闭标签页,无需重启即可生效。打开一个纯白 HTML 页面测试,文字应明显变灰,背景沉为深灰而非纯黑——这是滤镜正常工作的信号。











