在移动设备上的 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 按预期工作(由我)。
我试过:
- 在输入字段上设置
font-size: 16px
- 设置
<meta name="viewport" content="width=device-width, initial-scale=1, max-scale=1" />
- 甚至出于绝望
<meta name="viewport" content="width=device-width, initial-scale=1, max-scale=1, user-scalable=no">
Android11、火狐93.1.0
难道我想实现的真的不可能吗?
- Codesandbox:https://y370s.csb.app/
- [1] Disable Auto Zoom in Input "Text" tag - Safari on iPhone
- [2]Disable zoom on input focus in Android webpage
- [3] Disable zoom on input focus in Android smartphone
固定在 96
Firefox Mobile 96 及更高版本现已修复此问题。错误线程中有一些迹象表明它在 94 之前的版本中不是问题,但我无法确认到底是哪个版本引入了这个错误。
使用 minimum-scale=1
和 maximum-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" />
我想在 Android Firefox(可能是 iOS Safari)上聚焦 HTML 输入字段时禁用自动缩放。
我在 SO [1, 2, 3] 和网络上阅读了许多相关的古老线程,但既没有找到可行的解决方案,也没有找到明确的答案,即这在 2021 年是不可能的。唯一的测试设备我有一个 Android phone(这也可能发生在 iOS 上),只有 Firefox 出现这个问题; Chrome 按预期工作(由我)。
我试过:
- 在输入字段上设置
font-size: 16px
- 设置
<meta name="viewport" content="width=device-width, initial-scale=1, max-scale=1" />
- 甚至出于绝望
<meta name="viewport" content="width=device-width, initial-scale=1, max-scale=1, user-scalable=no">
Android11、火狐93.1.0
难道我想实现的真的不可能吗?
- Codesandbox:https://y370s.csb.app/
- [1] Disable Auto Zoom in Input "Text" tag - Safari on iPhone
- [2]Disable zoom on input focus in Android webpage
- [3] Disable zoom on input focus in Android smartphone
固定在 96
Firefox Mobile 96 及更高版本现已修复此问题。错误线程中有一些迹象表明它在 94 之前的版本中不是问题,但我无法确认到底是哪个版本引入了这个错误。
使用 minimum-scale=1
和 maximum-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" />