微信小程序兼容手机底部横条适配

方法一、

1、采用下面方式进行判断是否有底部横条

let res = wx.getSystemInfoSync();
if (res.model.indexOf('iPhone X') > -1 || res.safeArea.top > 20) {
      this.isAllScreen = true
};

注意,跟一些ui沟通时,可能他们会认为安卓上没有必要对底部进行抬高,所以可以把上面 res.safeArea.top > 20 部分去掉。

2、通过上面判断后,如果有斜杠,可以在底部增加68px padding或者如果布局采用的是定位的话,可以改变bottom的值.

方法二、

网上查到有人用下面方式兼容,采用方案是苹果方案,安卓机不支持。方式如下:

padding-bottom:calc(10px + env(safe-area-inset-bottom)/2);

注意:

1、10px是你原本不考虑底部横杆时布局的值

2、env、safe-area-inset-bottom 这篇文章介绍得很清楚 https://blog.csdn.net/sinat_24946363/article/details/105181622

3、ui可能更倾向于加68px,所以env(safe-area-inset-bottom)/2 中除以2其实是没有必要的,当然根据自己项目而定。另外,部分ui会要求在有悬浮按钮的时候,底部颜色跟悬浮按钮相同,没有悬浮按钮的时候与背景相同,所以虽然可以采用bottom调节定位,但采用padding-bottom更容易满足上述要求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值