小程序兼容ios底部小黑条
env()和constant(),是IOS11新增特性,用于设定与边界的距离,一共有4个变量:
safe-area-inset-left: 距离左边边界的距离 safe-area-inset-right: 距离右边边界的距离 safe-area-inset-top: 距离顶部边界的距离 safe-area-inset-bottom :底部边界的距离
在 IOS11.2 以前,可以使用constant()函数,在 IOS11.2 以后,它就被废了,可以使用env()替代
例:
padding-bottom: constant(safe-area-inset-bottom); // 兼容 IOS 11.2 以下 padding-bottom: env(safe-area-inset-bottom); // 兼容 IOS 11.2 以上 也可以这样写:可以预设一个高度 padding-bottom: calc(30rpx + constant(safe-area-inset-bottom)); padding-bottom: calc(30rpx + env(safe-area-inset-bottom)); 注意二者的顺序不能发生变化 必须 constant 在前 env 在后 也可以单独写但是单独写的话就没法做到完整的适配了,或者你可以确定用户全都是 IOS 11.2 以下的,或者都是IOS 11.2 以上的
拓展:
1. 本身有padding值,把padding-bottom一起计算进去:
padding-bottom:calc(15rpx + constant(safe-area-inset-bottom)); padding-bottom:calc(15rpx + env(safe-area-inset-bottom))
2.用高度加出来安全区域
height: calc(80rpx + constant(safe-area-inset-bottom)); height: calc(80rpx + env(safe-area-inset-bottom));
注意二者的顺序不能发生变化 必须 constant 在前 env 在后
更多参考链接:https://www.jianshu.com/p/6c7308c273b6 https://blog.csdn.net/tengyuxin/article/details/126105067
那时候我只有一台录音机也没有电脑 也不敢奢求说唱会让自己的生活变好