
【BUG系列】React 的 input 在 iOS 中内容显示偏移
错误样式如图,输入框内部的内容偏移了:
我是使用 React,输入框是在 Sheet 弹框中显示的,iOS设备一直显示有问题。
尝试了无数种办法,一直以为是焦点的问题,或者 React 的刷新机制影响了控件的显示。
我真的服了,无语死了,麻了。
最最后,发现的 高度 的问题!!!
不要给 input 设置固定的高度,而是通过 padding 来控制,然后就显示正常了。
我真的服了,期间尝试过 各种思路:
- 以为是布局影响,监听各种布局的改变,控制软键盘,网上搜的能监听的都试过了。
- 或者是焦点冲突的影响?提取或尽可能移除 useState 避免刷新组件。
- 或者是其他控件的影响?各种提取组件,使其尽量独立,不受其他控件干扰。
- 或者是 input 控件的平台适配问题?给 input 加各种平台适配的 css 样式,想让其居中显示。
最后,给领导说搞不了,改UI吧,想把输入框往上面放,不管软键盘了。
然后就在改布局的过程中,偶然发现好像好了,然后就发现了是高度的问题。
我真的麻了,上面的所有,像是 一百拳打在了空气中 。
应该是 固定高度 在 软键盘弹出时,布局发生变化,会影响 input 的自修复吧。
改成 py-3 后,它就可以自己调整高度和内容显示了。
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 时光·李记
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果