首页 > 编程语言 >小程序兼容ios底部小黑条

小程序兼容ios底部小黑条

时间:2023-04-06 13:33:58浏览次数:55  
标签:constant area safe ios bottom 兼容 padding inset 小黑

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

标签:constant,area,safe,ios,bottom,兼容,padding,inset,小黑
From: https://www.cnblogs.com/520BigBear/p/17292487.html

相关文章

  • Linux IO实时监控iostat命令详解
    简介iostat主要用于监控系统设备的IO负载情况,iostat首次运行时显示自系统启动开始的各项统计信息,之后运行iostat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。 语法iostat[-c][-d][-h][-N][-k|-m][-t][......
  • uni-app:ios/android中的nvue和vue页面加载自定义字体(hbuilderx 3.7.3)
    一,官方文档地址:https://uniapp.dcloud.net.cn/tutorial/nvue-api.html#addrule二,代码1,nvue页面:模板<viewclass="listTitle">{{item.title}}</view>......
  • IOS多线程之NSOperation(2)
    IOS多线程之NSOperation(2)最大并发数openvarmaxConcurrentOperationCount:Int并发数就是同时执行的任务数。比如,同时开3个线程执行3个任务,并发数就是3。但是,并发数是3,并不代表开启的线程数就是3,也有可能是4个或者5个。因为线程有可能在等待,进入了就绪状态。执行的过程:......
  • IOS多线程之NSOperation(3)
    IOS多线程之NSOperation(3)操作优先级和服务质量可以通过QueuePriority属性来设置operation在队列中的执行优先级publicenumQueuePriority:Int,@uncheckedSendable{caseveryLow=-8caselow=-4casenormal=0casehigh=4caseveryHigh......
  • IOS网络状态变化监听
    IOS网络状态变化监听使用Alamofire库的NetworkReachabilityManager一共有三种状态///Itisunknownwhetherthenetworkisreachable.caseunknown///Thenetworkisnotreachable.casenotReachable///Thenetworkisreachableontheassociated`ConnectionType`......
  • IOS富文本
    IOS富文本通过String创建一个NSMutableAttributedString,必须是带有Mutable的可变富文本,否则无法添加属性letstring="我是一个富文本"letastring=NSMutableAttributedString(string:string)给NSMutableAttributedString添加属性astring.addAttributes([.foregroun......
  • 有关IOS内存读写冲突
    有关IOS内存读写冲突在写内存相关代码时,获取已使用内存代码中报错lethostPort:mach_port_t=mach_host_self()varhost_size=mach_msg_type_number_t(MemoryLayout<vm_statistics_data_t>.stride/MemoryLayout<integer_t>.stride)varpagesize:vm_siz......
  • IOS多线程之NSOperation(1)
    IOS多线程之NSOperation(1)NSOperation是OC语言中基于GCD的面向对象的封装;提供了一些用GCD不好实现的功能;线程的生命周期由系统自动管理。NSOperation需要和NSOperationQueue配合使用来实现多线程方案。单独使用NSOperation的话,它是属于同步操作,并不具备开......
  • iOS - 利用 UIBezierPath 绘制圆弧
    iOS-利用UIBezierPath绘制圆弧APIUIBezierPath绘制圆弧主要利用以下方法:openfuncaddArc(withCentercenter:CGPoint,radius:CGFloat,startAngle:CGFloat,endAngle:CGFloat,clockwise:Bool)方法中各参数含义:center:圆心radius:半径startAngle:开始弧度endAn......
  • IOS实现水波纹
    IOS实现水波纹需要实现一个水波纹效果其实就是画两个正弦函数或者余弦函数的layer在view上面,根据屏幕刷新率来重绘,更新其左右偏移量来让其看起来是在左右移动具体实现定义两个layer,用不同的颜色填充lazyvarfrontLayer:CAShapeLayer={lettempV=CAShap......