ios 嵌套H5页面 input 光标跑偏的问题
摘要
博客讨论了在H5页面中,Android与iOS设备上input输入框聚焦时光标高度不一致的问题。在iOS上,光标高度与父元素相同,导致键盘输入时光标位置异常。问题源于父级元素设置了height和line-height。解决方法是移除这些样式,改用padding来设置内容区域的高度,从而避免光标高度异常。
问题描述:
目前在做的一个APP嵌套用的H5页面,内部表单的input输入框,在Android手机上获取焦点之后 显示正常,但ios手机上光标高度会跟父元素一样高,键盘输入数据后 光标会往上跑偏
问题代码:
问题原因:
主要原因就是给父盒子添加了height和line-height,当点击输入的时候,光标的高度就自动和父盒子的高度一样了。(谷歌浏览器的设计原则,还有一种可能就是当没有内容的时候光标的高度等于input的line-height的值,当有内容时,光标从input的顶端到文字
的底部)
解决方法:
去掉父盒子的高度height和行高line-height内容用padding撑开。