HTML前端利用flex解决input定位的问题

用简单的布局搞定input框使用fixed下输入的问题

最近在做移动端H5聊天应用发现,当input框在最底部并且使用 position:fixed 属性的时候在苹果手机中会出现不兼容的情况。

大概布局就是上面是列表 底部是input并基于浏览器定位放置于最底部

当点击输入框的时候会出现input位置错乱的情况

这里出现了上移的情况

这里出现了消失的情况,得滑动到最底下才会出现

在经过一系列的面向百度编程后,各种监听input是否聚焦在写相应的事件再去对input做一些位置上的定义,我感觉好麻烦,也非常繁琐,最后我实践出一个相对比较完美的方案并且只用flex 布局就可以轻松的实现

首先把页面分割成两个块组成列表滚动区和输入区

首先把最外部的盒子设为flex 盒子并且纵向排列,高度设为100%,就是和窗口一样大小,高度获取可以利用绝对定位或者给body设置100%高度继承下来等等方法

css 复制代码
.box{
    display:flex;
    flex-direction: column;
    height:100%
}

这样就纵向排列了,把滚动区的盒子自动撑开就行了

css 复制代码
.list{
    flex: 1;
    width: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling:touch;
}

底部设置高度

css 复制代码
.foot{
    width: 100%;
    height: 100rpx;
    background: #fff;
}
相关推荐
庄园特聘拆椅狂魔10 小时前
Java 后端转全栈的第一课:从前端项目搭建到技术选
java·开发语言·前端
triumph_passion10 小时前
前端路由策略:Memory、Hash 与 History
前端
李剑一10 小时前
AntDesign老版本没有月份和年份区间选择组件?我封装了一个完美版,附源码!
前端·vue.js
牧艺10 小时前
浏览器端 3D 看车重磅升级:从三款展车到可试驾的八车展厅
前端·three.js·交互设计
老男孩游戏时光11 小时前
Electron 桌面应用开发入门,前端也能写客户端
前端
默_笙11 小时前
🚊 别再让 AI 的记忆写两遍了:PostgreSQL 把关系查询和语义检索装进一张表
前端·javascript
进击的明明11 小时前
TypeScript速通笔记(下)
前端·面试·typescript
lzhdim11 小时前
C#不为人知的10个魔法特性:资深开发者也会震惊的底层奥秘
java·前端·javascript·算法·c#
zach12 小时前
前端落地实战:Next.js 项目 Nginx + PM2 生产部署全流程(附踩坑总结)
前端·pm2·next.js
overmind12 小时前
oeasy教h5前端001 修改的乐趣_直接修改在线网页
前端