【技术支持】关于html中移动端innerwidth的问题

首先看问题

移动端web相关

屏幕是375*667

html 复制代码
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <!-- <meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=0" /> -->
        <meta name="viewport" content="width=device-width, initial-scale=2.0" />
        <title>Document</title>
        <style>
            * {
                margin: 0;
            }
            #test {
                height: 100px;
                background-color: aquamarine;
            }
        </style>
    </head>
    <body>
        <div id="test"></div>
        <script>
            let div = document.getElementById("test");
            console.log(window.innerWidth); //375
            console.log(document.documentElement.clientWidth); //375
            div.style.width = 970 + "px";
            console.log(window.innerWidth); //971
            console.log(document.documentElement.clientWidth); //375
        </script>
    </body>
</html>

此代码在桌面端正常,在移动端有些异常,移动端的window.innerWidth不是视口大小,会变化

解决办法就是<meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=0" />,添加user-scalable=0

相关推荐
shmily麻瓜小菜鸡15 小时前
JavaScript / TypeScript 易踩坑知识点完全指南 -假值(Falsy Values)完全指南
开发语言·javascript·typescript
小鱼咕噜咕噜15 小时前
Element UI的el-upload文件上传与ZIP文件解压上传
javascript
labixiong15 小时前
z-index: 99999 输给 z-index: 2?原生弹窗的 Top Layer 排位战:后进者居上、看得见却点不着
前端·html
deli00715 小时前
CSS 渐变生成器:拖两个颜色直接给代码,做按钮背景不用手写
前端
陈拉斯15 小时前
上线一个多人扫码网页娱乐工具,我在并发、SEO、PWA 和打包脚本上踩的 8 个坑
javascript
芳心粽伙饭15 小时前
HTML第八章 表单标签
前端·html
Darling噜啦啦15 小时前
从 SSE 到 LLM 流式输出:搞懂前端实时通信的两种姿势
前端·后端·llm
10年前端老司机15 小时前
别卷CRUD了!前端用Next.js+LangChain.js,低成本冲进AI高薪赛道
前端·langchain·next.js
二进制漫游记15 小时前
ECharts 从入门到实战|前端数据可视化完整教程
前端·信息可视化·echarts
weixin_4407305015 小时前
pytest结合allure生成html测试报告(step、story、severity、screenshot)
前端·html·pytest·allure报告