火狐浏览器输入法候选框飘移是因坐标传递断裂所致;需关闭光标跟随、配齐gtk/qt/xmodifiers环境变量、在高dpi下执行ctrl+t→ctrl+l→ctrl+空格重初始化ime、或用安全模式排查干扰扩展。

火狐浏览器输入法选词框飘到屏幕右上角、悬浮在窗口外甚至完全不可见,打字时得手动挪动鼠标去找候选字,这不是网页问题,而是Firefox与输入法框架之间坐标传递断裂导致的视觉错位。
先关闭“光标跟随”功能
很多中文输入法(如搜狗拼音、QQ五笔、极点五笔)默认开启【光标跟随】,它会让候选框实时贴着光标移动;但Firefox在窗口缩放、焦点切换或DPI适配异常时,会把错误坐标传给输入法,结果候选框直接飞走。
右键点击输入法状态栏空白处 → 选择“属性设置” → 进入“高级设置” → 取消勾选【光标跟随】→ 点击“应用”。
这一步立刻生效,无需重启浏览器。如果候选框瞬间回落到输入框正下方,说明问题根源就在这里。
Linux系统必须配齐三组环境变量
GTK和Qt应用对输入法环境变量极度敏感,缺一不可。Firefox若没收到正确的IM模块声明,候选框连渲染锚点都没有,只能凭空漂浮。
方法一(Fcitx5用户):
打开终端,逐行执行:
echo 'export GTK_IM_MODULE=fcitx5' >> ~/.profile
echo 'export QT_IM_MODULE=fcitx5' >> ~/.profile
echo 'export XMODIFIERS=@im=fcitx5' >> ~/.profile
【不执行source ~/.profile,Firefox启动时仍读不到新变量】
方法二(IBus用户):
把上面三行中的fcitx5全部替换成ibus,XMODIFIERS值必须写成@im=ibus,漏掉@符号或=会导致完全失效。
Windows高DPI屏下强制重初始化IME
主屏150%缩放+副屏100%混合配置是高频触发场景。Firefox进程获取的是逻辑像素坐标,未经DPI-aware转换就交给输入法,结果候选框按错误比例定位。
第一步:确保Firefox窗口处于激活状态,但不要最小化;
第二步:按Ctrl+T新建空白标签页;
第三步:在地址栏随意输入一个字母(如a),再按Ctrl+L重新聚焦地址栏;
第四步:此时立刻按Ctrl+空格唤出输入法。
这个操作会触发Firefox底层IME上下文重建,比重启快6倍以上。
用安全模式隔离扩展干扰
某些输入法增强类扩展(如“拼音助手”“五笔增强包”)会劫持Firefox的焦点事件链,篡改光标坐标上报路径。
在地址栏输入about:support并回车 → 找到“故障排除信息”区域 → 点击“在安全模式中重启” → 勾选“禁用所有附加组件” → 点击“重启”。
重启后测试输入框候选框是否回归正常位置。若恢复正常,说明问题出在某个扩展上,可逐个启用排查。











