手机点击input时,button会被顶上去?求解决!!!

H5页面 当button 使用position: fixed;bottom: 0;的时候 点击input 按钮会被顶上去

图片描述

图片描述

阅读 5.7k
7 个回答

我之前也遇到过这样的问题,可以获取当前设备的高度,赋给body,此时当再调用输入法的时候就没问题了

理论上:输入框激活,输入法弹起。导致浏览器的可视区域变小(window变小),所以fixed元素被撑上去属于正常现象。

如果你认为这是一个bug,你可以不用fixed;或者:输入框激活的时候把按钮隐藏掉。

这个应该是输入框的问题

这个是fixed的一个正常现象,一般情况下我的方法是用一个jQuery的方法来控制;
如下:

$(function(){
    //焦点时隐藏
    $("input").on("focus",function(){
        $(".submit").hide();
    });
    //失去焦点时显示
    $("input").on("blur",function(){
        $(".submit").show();
    });
})

正常现象 可以重新load一个一样页面,对这个页面稍微做点处理就好。个人意见哈:你也可以把会被顶起的元素在input框获得焦点的时候display:none 然后输入法关闭(或者是input失去焦点)的时候在display:none

应该是给button的position:fixed;原因,当input获取焦点时,使button的定位变为position:absolute;
$(function(){

$("input").focus(function(){
    $("button").css("position","absolute");
});
$("input").blur(function(){
    $("button").css("position","fixed");
});

});

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题