微信小程序使用rpx单位的重要性

在微信小程序的实际开发中,经常会遇到在不同的机型上显示有差异的问题,当然导致的原因有很多。其中rpx单位很是关键,因为微信小程序在设计的时候会考虑各种尺寸的屏幕,所以如果你使用了rpx单位,那么微信小程序在运行的时候会根据不同的机型进行解析,从而做出调整,省去了不少的麻烦。参考如下表:

设备rpx换算px (屏幕宽度/750)px换算rpx (750/屏幕宽度)
iPhone51rpx = 0.42px1px = 2.34rpx
iPhone61rpx = 0.5px1px = 2rpx
iPhone6 Plus1rpx = 0.552px1px = 1.81rpx

特别是“半路出家”的同学,来了任务直接就做,没有经过系统的学习,可能要吃亏了。笔者就是如此,临时接到开发微信小程序的任务,上来就写代码,页面基本能画出来,功能大部分也能实现,就是bug多。比如小程序在HarmonyOS 和 nexus5 等机型与其它机型会有很大差距。研究很久,查资料,下载教学视频学习,都未能很好解决。

最后发现是因为上面的元素使用了px导致的,如果使用px,微信小程序会失去了一部分的适配功能,所以在各种尺寸的机型上容易出问题,特别是老机型。如下一个三个块定位简单的例子,其中swiper-top的高度单位使用rpx是各机型样式统一的关键:

<view class="container">
   <view class="swiper-top">
        ... ... 
   </view>
   <view class="search-panel">
    ... ... 
    </view>
   <view class="swiper-bottom ">
     ... ... 
   </view>
</view>
.container {
    z-index: 10;
    width: 100vw;
    padding: 15rpx;
    color: #191919;
}
  .swiper-top {
    height: 400px;
    position: relative;
    margin: 0 0 450rpx 0;
    }

.search-panel {
    width: calc(100% - 48px); 
    height: 504rpx; 
    margin: 0 auto; 
    position: absolute; 
    left: 0; 
    top: 400rpx;
    right: 0; 
    bottom: 0;
    box-shadow: 0px 0px 15px #999; 
    border-radius: 15px; 
    z-index: 99;
}
.swiper-bottom {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
}

还有一个查找教学资源的小插曲,在一个叫《T视频教程的网站,开通了一个很便宜的会员,分享交流学习技术,结果查了十几个教程资源,只有一个可以下载学习,其它都没有。骗人啊,大家注意了。无论你回复什么内容,过几天都会被改为“资源好”之类的话语。IT视频教程(itspjc.com) 这个网站,大家千万别上当!

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值