微信小程序不同机型底部安全区域问题

在微信小程序开发过程中,有些页面底部按钮是固定在底部的,还有如果是自定义tabbar也是需要固定在底部的,这里有两个问题:

  • 不同机型的底部安全区域不同,如有些苹果手机底部有操作栏,这部分距离需要留出来否则会遮挡内容
  • 如果底部有固定定位元素,可能会导致内容区域底部部分元素被固定元素遮挡

问题1解决方法

使用safe-area-inset-bottom CSS 属性

这个属性可以获取到底部安全区域的高度。你可以通过在需要适配的元素上使用此属性,并将其设置为对应的值来实现适配。

java 复制代码
.bottom-wrap {
	position: fixed;
	bottom: 0;
	padding-bottom: constant(safe-area-inset-bottom);
	padding-bottom: env(safe-area-inset-bottom);
}

wx.getSystemInfoSync()

使用wx.getSystemInfoSync() API 获取系统信息:通过调用wx.getSystemInfoSync()获取系统信息,你可以获取到屏幕的宽高、底部安全区域的高度等信息。根据这些信息,你可以动态地计算和调整元素的位置和大小。

java 复制代码
const systemInfo = wx.getSystemInfoSync();
const safeArea = systemInfo.screenHeight - systemInfo.safeArea.bottom;

问题2解决方法

内容区域设置 padding-bottom,如果底部固定定位元素的高度是 50px ,那么只需要设置css:

java 复制代码
.content-wrap {
   padding-bottom: calc(constant(safe-area-inset-bottom) + 50px);
   padding-bottom: calc(env(safe-area-inset-bottom) + 50px);
}
相关推荐
黑马源码库miui520861 小时前
场馆预定系统小程序
微信·微信小程序·小程序·1024程序员节
说私域4 小时前
基于开源链动2+1模式AI智能名片S2B2C商城小程序的市场份额扩张路径研究
人工智能·小程序·开源
2501_915106325 小时前
iOS 打包 IPA 全流程详解,签名配置、工具选择与跨平台上传实战指南
android·macos·ios·小程序·uni-app·cocoa·iphone
00后程序员张5 小时前
iOS 混淆实操指南多工具组合实现 IPA 混淆、加固与发布治理 IPA 加固
android·ios·小程序·https·uni-app·iphone·webview
CRMEB系统商城10 小时前
【新版发布】标准版PHP v5.6.4正式版,优化部分用户体验
java·大数据·小程序·php·ux
知识分享小能手1 天前
uni-app 入门学习教程,从入门到精通,uni-app 企业项目实战:鲁嗑瓜子项目开发知识点(9)
前端·javascript·学习·微信小程序·小程序·uni-app·vue
知识分享小能手1 天前
uni-app 入门学习教程,从入门到精通,uni-app中uCharts组件学习((8)
vue.js·学习·ui·微信小程序·小程序·uni-app·echarts
社会底层无业大学生1 天前
uniapp微信小程序简单表格展示
微信小程序·小程序·uni-app·vue·1024程序员节
從南走到北1 天前
JAVA无人自助共享系统台球室源码自助开台约球交友系统源码小程序
java·微信·微信小程序·小程序·1024程序员节