【关于微信小程序导航栏的那些坑(uniapp)】

相信各位前端开发的小伙伴们经常在开发的过程中都曾遇到过这样的问题!

        1.小程序同一个页面用var(--status-bar-height)和uni.getSystemInfoSync().statusBarHeight获取的状态栏高度不一致。

        2.在开发者工具中的某个机型下开发得好好的,然后一切换机型。。。。 唉呀!这页面怎么被顶下来了,哎呀!这页面怎么又被导航栏覆盖了呀。

        3.明明在iphone x机型下页面都不滚动,怎么到了iphone6plus机型就滚动了呢?

以上问题出现的原因都是因为,在页面样式的编写中页面元素的高度总和超过了100vh(也就是视窗的高度)。

那么如何解决上述的问题呢?如下(tips个人见解,勿喷)

        注意:在uniapp中需要使用方法返回,不然在页面中加载不出来 

然后挂载在prototype中(可以像我这样做)

 然后在页面中你就可以这样使用:

 下面的my-NavBar是我自定义的导航栏,设置的高度为90rpx,然后在每个页面的根标签使用如下代码就能避免页面被导航栏吞没啦

 :style="{ 'padding-top': 'calc(90rpx +  ' + $statusBarHeight() + ')' }"

然后页面内的内容只要加起来能够满足 100vh -(90rpx +  $statusBarHeight())的高度就ok啦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值