移动端页面输入法挡住input怎么解决?

提前说一下这个不是app开发,场景是在浏览器中
图片说明

如何解决,请看一下代码:
<!DOCTYPE html>

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <title>移动端输入法挡住输入框</title>
    <style>
        input {
            width: 100%;
            line-height: 1.5rem;
            border: 1px solid red;
        }

        .block-fill {
            height: 500px;
        }
    </style>
</head>

<body>

    <div id="main">
        <!--占位div-->
        <div class="block-fill"></div>
        <!--需要聚焦-->
        <input id="input" type="text"></input>
    </div>

</body>
<script>
    //获取页面高度
    var clientHeight = document.body.clientHeight;
    //设置监听聚焦事件
    document.body.addEventListener("focus", function(e) {
        var focusElem = document.getElementById('input')
    }, true);
    //设置监听窗口变化时间
    window.addEventListener("resize", function() {
        if(focusElem && document.body.clientHeight < clientHeight) {
            //使用scrollIntoView方法来控制输入框
            focusElem.scrollIntoView(false);
        }
    });
</script>


通过js就很轻松的解决这个问题。(我开始以为需要app那边去设置)

在mainfest.xml中,对那个Activity加:

android:name=".MainActivity"
android:windowSoftInputMode="adjustPan" >
...

需要在清单文件中配置一些东西,你可以查一下

1.在AndroidManifest.xml中对应的Activity配置:android:windowSoftInputMode="stateVisible|adjustResize"
2.在该Activity中的onCretae()的setContentView()方法前面添加:getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN)
3.在布局文件中添加ScrollView

  if ((/Android/gi).test(navigator.userAgent)) {
        window.addEventListener('resize', function () {
            if (document.activeElement.tagName == 'INPUT' || 
                document.activeElement.tagName == 'TEXTAREA') {
                window.setTimeout(function () {
                    document.activeElement.scrollIntoViewIfNeeded();
                }, 0);
            }
        });
    } 

你可以试试在mainfest.xml中,对Activity加上“:”,用英文格式