必须同时将full-screen-api.warning.timeout设为0和full-screen-api.warning.delay设为-1才能彻底关闭“网站已全屏显示”横幅;仅设timeout为0仅消除显示时长,鼠标移至顶部边缘仍会触发短暂渲染,而delay设为-1可彻底禁用其初始化逻辑,阻止任何条件下的渲染行为。

直接改两个 about:config 参数就能彻底关掉“网站已全屏显示”横幅,不需要装扩展、也不用碰 user.js——除非你怕 Firefox 更新后重置设置。
为什么只设 full-screen-api.warning.timeout 为 0 不够
这个参数控制横幅显示时长(毫秒),设成 0 后横幅确实一闪就消失,但鼠标一移到屏幕顶部边缘,它还是会短暂渲染出来。这不是 bug,是 Firefox 的交互逻辑:只要检测到光标靠近全屏区域上沿,就触发一次 UI 绘制,哪怕只存在几帧。
- 常见错误现象:全屏后横幅没看到,但移鼠标到顶部时突然闪一下
- 根本原因:timeout 只管“显示多久”,不管“要不要显示”
- 必须配合
full-screen-api.warning.delay才能真正切断触发链
必须同时把 full-screen-api.warning.delay 设为 -1
这个参数决定横幅首次出现前的延迟时间,设为 -1 表示“永远不触发”,Firefox 内部会跳过整个警告条初始化流程,连 DOM 节点都不创建。
- 操作顺序:先改
timeout为0,再改delay为-1,不能颠倒 - 改完必须关闭所有 Firefox 窗口(包括后台进程),再重新打开,否则部分标签页可能仍缓存旧行为
- 验证方法:全屏 YouTube 视频 → 把鼠标缓慢从底部拖到顶部边缘 → 看是否有一丝像素级闪烁或 DOM 元素出现
要不要加 user.js 文件
如果你经常更新 Firefox,或者用的是企业版/ESR 版本,about:config 手动改的值大概率会在下次大版本更新后被清空。这时候 user.js 就不是“可选”,而是必要。
- 文件必须放在 Firefox 配置目录下的根路径,不是
chrome/子目录 - 内容只能是两行,严格按格式:
user_pref("full-screen-api.warning.timeout", 0);和user_pref("full-screen-api.warning.delay", -1); - 编码必须是 UTF-8 无 BOM,用记事本保存时要手动选“UTF-8”,别用“UTF-8 with BOM”
- 写完重启浏览器,然后在
about:config里搜这两个键名,确认状态是“已修改(来自 user.js)”
最易忽略的一点:Firefox 的全屏警告机制和安全模型强绑定,禁用后不会影响视频播放本身,但若某网站用非标准方式(比如 iframe 嵌套 + JS 强制触发)调用全屏 API,可能在极少数情况下绕过该抑制逻辑——不过目前主流视频站(YouTube、Bilibili、Netflix)都走标准路径,完全不受影响。


















