一、背景
在开发微信小程序时,不同的手机型号会出现兼容问题,特此记录一下
二、安卓/IOS兼容问题总结
2.1、new Date()时间转换格式时,IOS不兼容
问题:在安卓中时间格式2024-1-31 10:10:10,但是在iOS中是不支持 "-" 作为日期分隔符
原因:IOS系统及 Safari 不支持YYYY-DD-MM时间格式
解决:将日期中的"-",替换为"/"
let time = new Date('2022-12-13 19:00'.replace(/-/g,'/'))
2.2、图片格式展示问题
问题:.webp 格式图片在 ios 设备上无法正常显示
原因:IOS系统的原生浏览器Safari不支持.webp格式
解决:将 webp 的后缀名替换为 jpg或png 的后缀名
img.replace(/\.webp/,'.jpg')
2.3、IOS机型margin属性无效
问题:底部footer设置margin属性时,IOS无效
原因:iOS8后,UiView有个属性 var layoutMargins:UIEdgeinsets,如果一个View是ViewController的rootview,系统会自动设置和管理margins , top和bottom margins被设置为0pt,left和right的值根据当前的 size class 不同而不同,可能取值为16或者20pt(iPhone6 plus, iPad),你不能修改这些值
解决:底部footer加个空盒子div,给height值
2.4、IOS安全区域适配
问题:在IOS设备上,可以看到物理Home键被取消,改为底部小黑条替代home键功能。微信小程序和 h5 网页需要针对这种情况进行适配,否则可能会遇到底部按钮或选项卡栏与底部黑线重叠的情况
解决:两种方法
方法一:使用微信官方API,wx.getSystemInfo()中的safeArea对象进行适配
# wx.getSystemInfo 对比screenHeight和safeArea.bottom
如果是需要适配的机型,使用safeArea中的bottom,得到安全区域底部纵坐标,然后使用screenHeight减去bottom就能得到小黑条的高度。保存到localstorage里面,全局都可以使用。
方法二:使用苹果官方推出的css函数env()、constant()适配
# css函数env()、constant()适配
env()和constant(),是IOS11新增特性,Webkit的css函数,用于设定安全区域与边界的距离,有4个预定义变量:
safe-area-inset-left:安全区域距离左边边界的距离
safe-area-inset-right:安全区域距离右边边界的距离
safe-area-inset-top:安全区域距离顶部边界的距离
safe-area-inset-bottom :安全距离底部边界的距离
因为目标是需要对底部小黑条做适配,所以只需要关注safe-area-inset-bottom这个值。
在做屏幕适配时可以这么写
padding-bottom: constant(safe-area-inset-bottom); /*兼容 IOS<11.2*/ padding-bottom: env(safe-area-inset-bottom); /*兼容 IOS>11.2*/
2.5、input输入框在ios中光标及字体不居中
问题:input输入框在ios中光标及字体不居中
原因:iOS 的自动校验功能会对输入内容进行格式化,导致文本显示位置发生偏移。
解决:两种方法
方法一:禁用自动校验功能:将 input 的 type 属性设置为 text 可以禁用 iOS 的自动校验功能,从而解决光标和文本不居中的问题。
方法二:使用 CSS 样式:通过设置 input 的 padding 和 font-size 属性,可以让输入框中的文本垂直居中和水平居中。
input { padding: 10px 0; /* 垂直居中 */ font-size: 16px; /* 字体大小 */ }
2.6、iOS使用overflow:auto;滚动会卡顿
解决:-webkit-overflow-scrolling: touch
最后,👏👏 😀😀😀 👍👍
猜你喜欢
- 22天前(a级景区评定机构)全国A级旅游景区创建与提升培训班在敦煌市举办
- 22天前(fender japan hybrid)Fender东京旗舰店盛大开幕在即,开售商品和店内服务提前揭晓
- 22天前(中旅酒店 维景)中旅酒店首次AI数字人直播亮相南京维景
- 22天前(福朋喜来登酒店宴会厅)福朋喜来登品牌亮相北部湾城市群 阳江中心福朋喜来登酒店开业
- 22天前(花王伴你乐享五一好“趣”处)花王伴你乐享五一好“趣”处
- 22天前(万豪旅享家活动2021)精彩上新,漫享夏日----跟随万豪旅享家新开酒店解锁夏日旅行灵感
- 22天前(2025年安徽省“百场黄梅唱响百家景区”示范展示启动)2025年安徽省“百场黄梅唱响百家景区”示范展示启动
- 22天前(“三天跨两城”催生租车新需求,神州租车清明跨城订单同比增长416%)“三天跨两城”催生租车新需求,神州租车清明跨城订单同比增长416%
- 22天前(携程租车加盟合作)携程租车加盟优势全解析:开启旅游出行市场新篇章
- 22天前(我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉)我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉
网友评论
- 搜索
- 最新文章
- (2020广州车展哈弗)你的猛龙 独一无二 哈弗猛龙广州车展闪耀登场
- (哈弗新能源suv2019款)智能科技颠覆出行体验 哈弗重塑新能源越野SUV价值认知
- (2021款全新哈弗h5自动四驱报价)新哈弗H5再赴保障之旅,无惧冰雪护航哈弗全民电四驱挑战赛
- (海南航空现况怎样)用一场直播找到市场扩张新渠道,海南航空做对了什么?
- (visa jcb 日本)优惠面面俱到 JCB信用卡邀您畅玩日本冰雪季
- (第三届“堡里有年味·回村过大年”民俗花灯会活动)第三届“堡里有年味·回村过大年”民俗花灯会活动
- (展示非遗魅力 长安启源助力铜梁龙舞出征)展示非遗魅力 长安启源助力铜梁龙舞出征
- (阿斯塔纳航空公司)阿斯塔纳航空机队飞机数量增至50架
- (北京香港航班动态查询)香港快运航空北京大兴新航线今日首航
- (我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉)我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉
- 热门文章