今天在编写小程序页面时发现,在iphoneX真机预览时,底部button会被手机底部黑线盖住一部分,

对于我这种强迫症来说,简直不能忍。

首先说下手机的安全区域

安全区域指的是一个可视窗口范围,处于安全区域的内容不受圆角(corners)、齐刘海(sensor housing)、小黑条(Home Indicator)的影响。

我用的手机是iphone X ,显示效果如上,为了美观和易用性,我们对手机显示进行适配

第一种方案 CSS3中的constant、env函数

page {  padding-bottom: constant(safe-area-inset-bottom);  padding-bottom: env(safe-area-inset-bottom);}

两句代码就能解决ios底部安全距离问题

第二种方案 动态获取手机型号,给view加margin-bottom

1.app.js中定义全部变量

 globalData: {     Modelmes: null },

2.onLaunch获取手机型号等信息

 onLaunch(options) {  wx.getSystemInfo({    success: (res) => {      //将机型存入到本地缓存 以免后期其他业务逻辑需要使用      wx.setStorageSync('Modelmes', res.model)      if (res.model === 'iPhone X' || 'iPhone XR' || 'iPhone XS Max' || 'iPhone 11' || 'iPhone 11 Pro' || 'iPhone 11 Pro Max'){        this.globalData.Modelmes = true;      }else{        this.globalData.Modelmes = false;      }    }  })

3.需要适配的页面调用

var app = getApp();let { Modelmes } = app.globalData;this.setData({ Modelmes });最外层增加margin-bottom<view  style="margin-bottom:{{Modelmes?'68rpx':'0'}}">

最终显示效果

©著作权归作者所有:来自51CTO博客作者mb5fd86dae5fbf6的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 我胡汉三又回来了,继续每天写总结
  2. 新版Nginx1.17体系化深度精讲 给开发和运维的刚需课程
  3. Google Fuchsia OS 可能的第一款手机曝光!华为在 Honor Play 上启
  4. CentOS 7下使用FirewallD构建动态防火墙
  5. android从手机中获取通讯录时按名称排序
  6. Android初级教程获取手机位置信息GPS与动态获取最佳方式
  7. Android(安卓)点击EditText以外区域,隐藏键盘
  8. Android(安卓)手机Root 原理解析
  9. Android开发 华为手机读取相册闪退问题

随机推荐

  1. Android 渗透测试学习手册 第四章 对 And
  2. 工程师淘金:开发Android主攻四大方向
  3. 深入Android
  4. 在Ubuntu12.10-32bit上构建、测试WebRTC
  5. Android最新技术-Android11周
  6. android 完美适配解决方案
  7. 关于获取Android中文件内容有感
  8. 杂谈:2012年Android的发展状况
  9. 王家林的81门一站式云计算分布式大数据&
  10. 高焕堂:iPhone软件是芝麻,巧用Android才能