本文介绍了当键盘可见时,iOS 15 Safari会检测到浮动地址栏的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在Safari iOS15中,默认情况下,地址栏固定在视区的底部。如iOS 15 Safari floating address bar所述,您可以使用padding-bottom: env(safe-area-inset-bottom)
确保内容显示在其上方。但是,如果键盘可见,则环境变量不起作用,因为浮动地址栏显示在键盘上方,并清除视区的底部。这可能会导致某些内容隐藏在其下方。以下是该问题的一个简单演示:https://pmusaraj.github.io/ios15-bottom-bar2.html
在iOS 14及更低版本或iOS15上,如果Safari设置为在顶部显示地址栏,则当文本区域处于焦点位置时,您可以看到提交按钮。在默认的iOS15上,您不能,因为设备返回的视区高度不包括浮动地址栏。
更新:https://bugs.webkit.org/show_bug.cgi?id=229876
的WebKit错误报告推荐答案
我能找到的最接近的解决方案是使用导航器检查是否存在iOS 15。用户代理:
数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">console.log(navigator.userAgent.indexOf("iPhone OS 15") != -1)