input输入内容时放大问题

时间:2023-03-09 01:30:30
input输入内容时放大问题

最近做的微信网站有一个关于input输入框页面放大的问题。比如登录页面刚打开时正常,但用户输入信息登录时,页面就会放大。解决这个问题,首先需要在头部加一个

<meta name="viewport" content="width=720,inital-scale=1.0,user-scalable=no;">

再加一个如下的css样式:

input,input:focus,input:active{user-select: text;}

问题就解决了,有类似问题的同学可以试试。

js的解决办法:

首先在头部加一个js来获取手机的不同型号对应的并屏幕大小,然后给其加不同的meta属性。如下:

<script>
    if(/Android (\d+\.\d+)/.test(navigator.userAgent)){
       var version = parseFloat(RegExp.$1);
    if(version>2.3){
       var phoneScale = parseInt(window.screen.width)/720;
       document.write('<meta name="viewport" content="width=720, minimum-scale = '+ phoneScale +', maximum-scale = '+ phoneScale +', user-scalable=no, target-densitydpi=device-dpi">');
       }else{
            document.write('<meta name="viewport" content="width=720, target-densitydpi=device-dpi">');
       }
       }else{
            document.write('<meta name="viewport" content="width=720, user-scalable=no, target-densitydpi=device-dpi">');
       }
</script>

其次就是需要改你的css。即将你的css中所有定了页面最大宽度的具体值全部改成100%.
这样就能解决问题了,经测试这个方法对所有常用机型都适用。