iOS下的 Fixed BUG
input 光标位置乱窜
固定式浮层内的输入框光标会发生偏移。即
fixed
定位的容器中输入框光标的位置显示不正确,没有正常地显示在输入框中,而是偏移到了输入框外面
可触发条件
- 页面body出现滚动条
- 点击页面出现用fixed定位的弹框,弹框内有输入框,键盘弹起,页面发生滚动
- 键盘弹起后手动滚动页面
通过调试工具发现键盘弹起视图向上调整了,但页面中元素所占的位置,其实并没有向上进行调整;输入框所占的位置还是原来键盘未弹起时的位置
input位置
原因
- 软键盘唤起后,页面的 fixed 元素将失效,所以当页面超过一屏且滚动时,失效的 fixed 元素就会跟随滚动了
不仅限于
type=text
的输入框,凡是软键盘(比如时间日期选择、select 选择等等)被唤起,都会遇到同样地问题
解决思路
iOS 下由于软键盘唤出后,页面 fixed 元素会失效,导致跟随页面一起滚动,倘若页面不会过长出现滚动,即便 fixed 元素失效,也无法跟随页面滚动,也就不会出现上面的问题了
.content {/* main绝对定位,进行内部滚动 */position: absolute;top: 0;bottom: 0;right:0;left:0;/* 使之可以滚动 */overflow-y: scroll;/* 增加该属性,可以增加弹性 */-webkit-overflow-scrolling: touch;
}<body><div class="content"><!-- 内容在这里... --></div>
</body>
这样不管是弹框里的input还是input位置都能一劳永逸
相关资源
- https://bugs.webkit.org/show_... (Wrong caret position for input field inside a fixed position parent on iOS 11 )
iOS下的 Fixed BUG相关推荐
- 解决Web移动端Fixed布局的方案(防止页面露底、overflow-scrolling、iOS下的 Fixed + Input BUG现象、isScroll.js)
一些细节处理 在细节处理上,其实还有很多要注意的,挑几个实际遇到比较大的问题来说一下: 有时候输入框 focus 以后,会出现软键盘遮挡输入框的情况,这时候可以尝试 input 元素的 scrollI ...
- web移动端Fixed在Input获取焦点时ios下产生的BUG及处理
1.现象 可以看到下面两张图,图1搜索框为fixed固定在顶部,滚动没有任何问题. 图2当光标进入搜索框时,ios自作聪明的把光标定位到中间,并且fixed属性被自动修改成了absolute.此时注意 ...
- 移动端踩坑记---------ios下输入法遮挡input
移动端踩坑记---ios下输入法遮挡input 最近项目中遇到了一个比较严重移动端IOS下的Fixed兼容问题,网上也有很多人躺在这个问题上了,现在开始详细讨论一下这个问题. 现在我们先来看一 ...
- ios下fixed回复框bug的解决方案
前几天做一个移动端的页面,要加个像微信那样附着在底部的回复框,按照做PC端网页的思路,首先是用fixed,在安卓上测了一下是好的,结果到同事的iphone6p上就不行了,点击输入框之后它总会跳到屏幕中 ...
- h5 iframe嵌套页面_汇总IOS下奇葩BUG以及iframe嵌套页面带来的一些困扰
做H5开发,安卓和IOS的兼容问题经常会困扰我们,尤其是跟第三方平台合作,用到iframe嵌入式应用,令很多Web前端开发的童鞋脑壳疼,相信大家也入了不少坑,且踩且珍惜吧,呵呵^_^.今天抽时间整理一 ...
- IOS 下 -webkit-overflow-scrolling 引发的 bug
segmentfault 网站居然这么坑,写笔记的编辑器那么不友好,发不了图片,只能发文章了. 网上关于 IOS 下 -webkit-overflow-scrolling 的相关 bug 还挺多的,这 ...
- iOS下border一半不显示问题
如图区域, 1.在做点击评价的时候,刚开始遇到下边选择标签左边border显示不全(仅在iOS下电脑和安卓显示完全正常), 解决方法:没有写宽高,使用padding将内容撑开,解决 2.又一次遇到问题 ...
- ie6 7 8下的一些bug和解决办法
1:li边距"无故"增加 任何事情都是有原因的,li边距也不例外. 先描述一下具体状况:有些时候li边距会突然增 加很多,值也不固定(只在IE6/IE7有这种现象),让人摸不着头脑 ...
- iOS下JS与OC互相调用(五)--UIWebView + WebViewJavascriptBridge
WebViewJavascriptBridge是一个有点年代的JS与OC交互的库,使用该库的著名应用还挺多的,目前这个库有7000+star.我去翻看了它的第一版本已经是4年前了,在版本V4.1.4以 ...
最新文章
- 加班到凌晨三点,就能月薪五万了吗?
- [Win7]如何还原[.bat]文件关联
- Google148亿元收购Fitbit,抢占苹果、三星可穿戴设备市场地盘
- Android 在本地程序res/raw中读取数据操作
- Lambda化的一个例子
- 如何破解“中国开源拿来主义”?包云岗的几点分析
- PFILE和SPFILE
- 《Scikit-Learn与TensorFlow机器学习实用指南》 第1章 机器学习概览
- mysql 测试 缓存_mysql 缓存开启及测试
- Android开发实践:Java层与Jni层的数组传递
- 东华大学计算机学院刘国华,计算机科学与技术学院2016级迎新大会顺利举行
- php主页备案号底部中间,如何将网站备案号放到网站底部
- 车辆颜色分类网络—BeerNet
- 阿里开源数据同步工具--DataX
- 数模2021暑期培训
- Table ‘xxx‘ is specified twice, both as a target for ‘UPDATE‘ and as a separate source for data
- python使用numpy的np.mod函数计算numpy数组除以某一特定数值剩余的余数(remainder)、np.mod函数和np.fmod函数对负值的处理方式有差异
- 18V降压3.3V,15V降压3.3V的降压IC和LDO芯片方案
- 今日头条-级联组件开发过程
- 前端JS常见树——Tree
热门文章
- 判断两个多边形相交的面积_聊聊3D模型组件—顶点,边,多边形
- confluence 编辑器这次没有加载_代码编辑器横评:为什么 VS Code 能拔得头筹
- python b站 关注_[我叫以赏]Python获取B站UP主粉丝数
- ubuntu nginx php5fpm,Ubuntu安装nginx + php5-fpm
- 鸿蒙操作系统在使用了吗,【图片】华为鸿蒙系统的厉害之处在于 你可能非用不可
!【手机吧】_百度贴吧...
- nginx php 后缀名,nginx去掉php后缀名的方法
- 如何用html制作心,html – 如何创建CSS心脏? /为什么这个CSS创造一个心脏的形状?...
- 手语识别 机器学习_机器学习入门实践,让机器识别一只猫
- 利用Python模拟鼠标操作,一键将GIF文件载入CSDN的Markdown编辑器
- 2021年春季学期-信号与系统-第十五次作业参考答案-第二小题参考答案