H5页面兼容苹果手机顶部刘海和底部的安全黑条区域


页面底部元素和安全区重叠

H5页面兼容苹果手机顶部刘海和底部的安全黑条区域

使用苹果官方推出的css函数env()、constant()来适配 (建议)

  • safe-area-inset-left:安全区域距离左边边界的距离
  • safe-area-inset-right:安全区域距离右边边界的距离
  • safe-area-inset-top:安全区域距离顶部边界的距离
  • safe-area-inset-bottom :安全距离底部边界的距离

这里我们只需要关注safe-area-inset-bottom就行了

而env()和constant()函数有个必要的使用前提,H5网页设置viewport-fit=cover的时候才生效,小程序里的viewport-fit默认是cover

CSS 全选
.keyboard {
  position: fixed;
  bottom: 0;
  left: 0;
  height: calc(240px+ constant(safe-area-inset-bottom)); /* 兼容 IOS<11.2 */
  height: calc(240px + env(safe-area-inset-bottom));/* 兼容 IOS>11.2 */

  width: 100%;
  padding-bottom: constant(safe-area-inset-bottom); /* 兼容 IOS<11.2 */
  padding-bottom: env(safe-area-inset-bottom); /* 兼容 IOS>11.2 */
}

重点是下面的四行代码,注意:constant要在env前面

CSS 全选
height: calc(240px+ constant(safe-area-inset-bottom)); /* 兼容 IOS<11.2 */
height: calc(240px + env(safe-area-inset-bottom));/* 兼容 IOS>11.2 */
padding-bottom: constant(safe-area-inset-bottom); /* 兼容 IOS<11.2 */
padding-bottom: env(safe-area-inset-bottom); /* 兼容 IOS>11.2 */

其他扩展

iphoneX的“刘海”为相机和其他组件留出了空间,同时在底部也留有可操作区域。那么网站边尴尬了~被限制在了这样的“安全区域”内,两边会出现一道白条。解决的方案是:1、给body添加一个background;2、添加viewport-fit=cover meta标签,使页面占满整个屏幕。

XML 全选
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">

H5页面兼容苹果手机顶部刘海和底部的安全黑条区域

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
管理员
上一篇:Python退出主进程后子线程不会退出的解决方案
下一篇:.NETCore动态解析Razor代码cshtml代码解析RazorEngine.NetCore
评论列表

发表评论

评论内容
昵称:
关联文章

H5页面兼容苹果手机顶部刘海底部安全区域
支付宝:H5 JSAPI支付开发手册
微信H5页面开发禁用webview内嵌h5缩放啊?
Asp.net 微信H5唤起支付支付回调
软件:批量HEIC转JPG 苹果手机照片格式转JPG
.net 简单实现在H5中将word、jpg、png转成PDF给PDF添加水印并且控制样式可视化编辑
element-ui改进el-form表单样式,取消form-item底部边距:form-inner-error
iNeuOS工业互联网操作系统,分布式云端控制安全策略增加实时日志功能
服务器安全:限制外网访问解决方案
ASP.Net 微信H5 OAuth2 认证 (前后端不分离)
.NETCore.NET5 MVC 控制器中判断是否登录
API接口安全设计方案
ASP.NET Core MVC 在过滤器ActionFilter中保存页面生成html静态页面文件
C#安全帮助类,提供MD5,AES加解密,SHA-1加密等
iNeuOS工业互联网操作系统,发布3.6.4版本:云端安全控制实时日志功能,附Chrome、FirefoxEdge浏览器测试性能对比
formsubmit()方法不能触发onsubmit事件解决方法,兼容各版本浏览器。
SQL Server 数据库安全之角色
window服务器安全一些配置
.Net 线程安全集合
javascript中letvar区别

联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码