在移动设备上的 Firefox 中输入字段焦点后防止放大

Prevent zooming in after input field focus in Firefox on mobile

我想在 Android Firefox(可能是 iOS Safari)上聚焦 HTML 输入字段时禁用自动缩放。

我在 SO [1, 2, 3] 和网络上阅读了许多相关的古老线程,但既没有找到可行的解决方案,也没有找到明确的答案,即这在 2021 年是不可能的。唯一的测试设备我有一个 Android phone(这也可能发生在 iOS 上),只有 Firefox 出现这个问题; Chrome 按预期工作(由我)。

我试过:

Android11、火狐93.1.0

难道我想实现的真的不可能吗?

固定在 96

Firefox Mobile 96 及更高版本现已修复此问题。错误线程中有一些迹象表明它在 94 之前的版本中不是问题,但我无法确认到底是哪个版本引入了这个错误。

使用 minimum-scale=1maximum-scale=1 设置元标记,例如:

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, minimum-scale=1, maximum-scale=1" />

参考:Bug 1738696

将来只需在 <meta name="viewport" 标签中设置 user-scalable=no 即可,就像 touch-action: manipulation 一样只需设置 CSS 即可。关注 Bug 1746126 以获取相关更新。

对于所有移动浏览器

为了防止输入字段在所有移动浏览器中缩放,我建议还包括 user-scalable=no,以涵盖您的所有基础。所以最后的答案是把这个放在你的 <head>.

<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no" />