为了账号安全,请及时绑定邮箱和手机立即绑定

ios中input获取焦点定位问题

ios中input获取焦点定位问题

慕村9548890 2018-09-04 09:09:03
查看完整描述

1 回答

?
慕码人2483693

TA贡献1860条经验 获得超9个赞

应该算是移动端比较经典的兼容性bug了,如果没猜错的话,你的输入框应该是使用的fixed定位。
出现原因
软键盘唤起后,页面的fixed元素将失效(即无法浮动,也可以理解为变成了absolute定位),所以当页面超过一屏且滚动时,失效的fixed元素就会跟随滚动了。这便是iOS上fixed元素和输入框的bug。其中不仅限于type=text的输入框,凡是软键盘(比如时间日期选择、select选择等等)被唤起,都会遇到同样地问题。
解决思路&方案
1.既然在iOS下由于软键盘唤出后,页面fixed元素会失效,导致跟随页面一起滚动,那么假如——页面不会过长出现滚动,那么即便fixed元素失效,也无法跟随页面滚动,也就不会出现上面的问题了。
2.不嫌重的话可以使用iScroll.js
这儿有一篇比较详细的解决方案Web移动端Fixed布局的解决方案

查看完整回答
反对 回复 2018-10-08
  • 1 回答
  • 0 关注
  • 956 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信