该问题出现在 iOS 11 中(在该操作系统上的所有浏览器中都存在,包括 Safari 和 Chrome)。当打开带有输入元素的模态窗口时,光标会移动到文本输入区域的上方或下方(在某些情况下,它甚至可能会移到一边)。

正如我后来发现的,这是所有 iOS 设备的常见错误: https ://bugs.webkit.org/show_bug.cgi?id=176896
谁遇到过这样的问题,你是如何解决的?
从有bug页面的反馈来看,该问题与iOS 11、11.1、11.2、11.3相关,苹果开发者尚未解决(此外,部分修复在11.2和11.3版本中不起作用)。
昨天我更新到ios 11.3,游标不再有问题,之前是在ios 11之前的版本上。
现在有一些修复可以稍微改善这种情况,但仍然没有成熟的工作版本。
例如,这里提供了这样的方法: https ://hackernoon.com/how-to-fix-the-ios-11-input-element-in-fixed-modals-bug-aaf66c7ba3f8
可能的解决方案:
1.设置body标签的固定位置
打开模态窗口时,我们
position: fixed为标签添加样式body,关闭后,我们将其删除。但是,如果模态窗口不是在页面的最顶部打开的,当它关闭时,页面会向上移动(您可以通过在打开时保存它并在关闭时设置滚动位置来修复它)。缺点:
2. 将模态窗口的显示从位置:固定切换到绝对。
模态窗口被分配一个属性
position: absolute,尺寸和偏移量是在创建时计算的。这种方法从根本上消除了光标偏移问题,但有许多令人讨厌的伪影。缺点:
3.将所有模态窗口翻译成单独的页面
这种方法更激进,因为 意味着对 modals 中使用的所有代码的 iOS 完全重写,但我认为这是解决问题的最完整的解决方案。
缺点: