当前位置: 首页 > news >正文

CSS移动端防止软键盘顶起页面_设置body高度或固定容器尺寸

应使用 JavaScript 动态监听 focusin/blur 和 resize 事件,结合 window.innerHeight 实时更新容器高度,避免依赖 100vh 或 viewport height 配置;关键交互元素禁用 position: fixed,改用 absolute + relative 布局。软键盘弹出后页面被顶起,body 高度失效怎么办移动端浏览器(尤其 iOS Safari)在软键盘弹出时会动态缩放视口、重排布局,body 的 height: 100vh 或 100% 会按“缩放后的可视区”计算,导致实际高度变小,内容上浮、按钮被顶出屏幕。这不是 CSS 写错了,是浏览器行为本身不可靠。别用 100vh 做全屏容器高度,iOS 下它会在键盘弹出后骤减(比如从 667px 掉到 400px)优先监听 resize 事件,用 window.innerHeight 动态更新容器高度,而不是依赖 CSS 固定值Android Chrome 相对稳定,但也要防万一;iOS 必须处理,且 resize 触发有延迟,需加防抖position: fixed 容器在键盘弹出后错位或消失固定定位元素(如底部输入框、悬浮按钮)在软键盘唤起时,部分 Android 浏览器会强制将其“推高”,iOS 则可能让 fixed 元素脱离视口甚至渲染异常。根本原因是 fixed 依赖的“视口”基准在键盘弹出时被浏览器篡改。避免对关键交互区域(如输入框、发送按钮)单独使用 position: fixed改用 position: absolute + 父容器 position: relative + bottom: 0,并确保父容器高度可控(比如用 JS 设置)若必须用 fixed,需在 resize 后手动重置 top 或 bottom 值,依据 window.innerHeight 计算监听 resize 不够用?补上 focusin 和 blurresize 在键盘弹出/收起时触发不稳定(尤其 iOS),常漏掉第一次弹出或收起瞬间。单纯靠它做高度适配,会出现“闪一下再调整”的视觉跳变。对所有可聚焦的输入类元素(<input>、<textarea>)监听 focusin:立刻记录当前 window.innerHeight,设为“键盘未起时的高度”监听 blur:延时 300ms 再恢复高度(给键盘收起留出时间),避免误判把 resize 当兜底,三者配合才能覆盖大部分机型和触发路径要不要用 viewport 的 height=device-height?这个配置早被主流浏览器废弃,Chrome 从 59+、Safari 从 iOS 10+ 就不再支持。写上不仅无效,还可能干扰其他 viewport 行为(比如缩放控制)。 Cleanup.pictures 智能移除图片中的物体、文本、污迹、人物或任何不想要的东西

http://www.jsqmd.com/news/721986/

相关文章:

  • 5分钟搞定黑苹果!OpCore Simplify智能EFI配置工具终极指南
  • TVA在显示面板制造与检测中的实践与挑战(6)
  • 实战派指南:在嵌入式Camera项目里,你的Gamma校正曲线到底该怎么调?
  • LitCAD:从零开始掌握开源二维CAD绘图的完整指南
  • 英雄联盟助手ChampR:3分钟学会职业选手的出装符文配置
  • Linux ACL权限配置避坑指南:从getfacl查看权限到setfacl设置默认规则的完整流程
  • 别再死记硬背了!我用这10个Python高频面试题,帮你拆解背后的设计思想
  • 手把手教你用UDS的3D服务(WriteMemoryByAddress)修改ECU标定值:一个真实案例
  • royalrover
  • 企业网出口冗余实战:华为交换机VRRP+静态路由联动配置避坑指南
  • 智能体商业化基础:SaaS、私有化、定制化模式
  • 如何快速掌握文本分析:KH Coder让复杂内容挖掘变得简单
  • AI浪潮下制造业重构:Java技术栈如何高效落地工业智能改造
  • 安路FPGA远程更新三选一:SPI、I2C、UART协议实战对比与选型建议
  • RWKV硬件加速:混合精度量化与FPGA架构优化
  • 从‘不显示’到‘能跳转’:手把手教你调试UniApp H5中的wx-open-launch-weapp开放标签
  • TVA在显示面板制造与检测中的实践与挑战(7)
  • 如何快速掌握极域电子教室防控制:JiYuTrainer完整使用教程与技巧
  • YOLOv8 AI自瞄:基于深度学习的FPS游戏终极辅助工具完整指南
  • 2026年十堰装企TOP5技术维度评测:工艺与服务解析 - 优质品牌商家
  • 别再只盯着PCIe了!用CXL Flit模式给数据中心“减负”的实战解析
  • 别再傻傻分不清了!LwIP内存池(memp.c)和内存堆(mem.c)到底怎么选?
  • 如何在老旧电视上流畅观看4K直播?这款免费Android应用给你终极解决方案!
  • 从专利库到Zemax:手把手教你搞定一个6mm F3.8定焦镜头的初始结构(含CodeV转换技巧)
  • CompressO:如何高效压缩视频图像?开源跨平台工具终极指南
  • 逆向实战:从浏览器调试到Python脚本,搞定大众点评WEBDFPID与_token参数
  • TVA在显示面板制造与检测中的实践与挑战(8)
  • 钢筋彩钢棚技术参数拆解与靠谱厂家选型参考:高端打包箱房,工地临建房,工地钢结构棚,工地集装箱房,排行一览! - 优质品牌商家
  • Real-Anime-Z 插件开发:为Ollama平台添加专属动漫模型支持
  • 别再手动抄数据了!用VB.NET写个脚本,一键批量导出CATIA零件属性到Excel