防止iPhone缩放形式?

Ata*_*adj 48 html css iphone html-select ios

代码:

<select>
    <option value="1">Home</option>
    <option value="2">About</option>
    <option value="3">Services</option>
    <option value="4">Contact</option>
</select>
Run Code Online (Sandbox Code Playgroud)

当我触摸时select,iPhone会放大该元素(并且在取消选择后不会缩小).

我怎么能阻止这个?或缩小?我无法使用,user-scalable=no因为我实际上需要这个功能.这是iPhone,选择菜单.

Sup*_*pra 72

这可以通过将font-size:16px设置为所有输入字段来防止.

  • 这似乎不再起作用了:/ ...我已经在带有iOS 9.0.2的iPhone 6上进行了测试...我的输入字段达到了20px,但它仍然坚持缩放以制作字段填满屏幕 (12认同)
  • 它现在仍适用于iPhone 5S和iOS 9.3.2 (2认同)
  • @Alex 它适用于我在 iPhone 5S 上使用相同的 iOS 版本。在此设备上,仅在`input:active` 上将字体大小设置为 16px 似乎可以在不改变明显字体大小的情况下实现这一点。设计不变,但禁用自动缩放。 (2认同)
  • 这根本不起作用.在6S上运行iOS 10.2. (2认同)

And*_*rri 67

更新:此方法不再适用于iOS 10.


它取决于Viewport,您可以通过以下方式禁用它:

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0"/>
Run Code Online (Sandbox Code Playgroud)

添加user-scalable=0它也应该适用于您的输入.

  • 我需要网站上的缩放功能.我只是不希望它用于表格. (24认同)
  • 尝试将`font-size:16px`赋予:`input [type ="text"],输入[type ="number"],textarea`. (19认同)
  • 这会禁用缩放,使用font-size可获得更好的用户体验. (3认同)
  • @AndreaTurri至少编辑你的答案以节省时间. (3认同)
  • 它从 font-size: 40px 开始工作!:)(视口设置为宽度=735px)。谢谢! (2认同)

小智 18

对于iOS,您可以通过简单地为操作系统认为足够的字体大小(> = 16px)来避免输入元素的缩放,从而避免需要缩放,例如:

input, select, textarea {
    font-size: 16px;
}
Run Code Online (Sandbox Code Playgroud)

它也是各种框架使用的解决方案,允许您避免使用元标记.