uni-app之响应式单位upx和rpx

重点:官方推荐使用rpx替代upx,参考:推荐使用rpx替代upx的公告。

  • 在普通css写法里,upx会被编译器编译;但动态绑定时,upx不能像rpx那样直接支持动态绑定,还得再使用uni.upx2px方法用来动态计算。
  • 其他几家小程序平台陆续都兼容了rpx机制,rpx不再是微信的专用单位,而成为了这个行业的通用单位。
  • 从HBuilderX 2.0.5起,已经支持rpx的正常着色和px2rpx的ide代码提示转换功能;官方也修改了uni-app文档中关于尺寸单位的介绍,不再推荐upx的使用,而推荐rpx。在App端和H5端支持rpx的动态绑定,实现rpx全端通用。(这个策略调整,不影响开发者的已有代码正常运行,开发者仍然可以使用upx和uni.upx2px,也可以改用rpx,没有必要批量调整老代码)

注意:响应式单位upx和rpx是动态宽度单位

  • 很多开发者对响应式单位依赖太严重了,比如组件高度字体大小也使用upx/rpx。
  • 只有当你需要某元素的单位要根据屏幕宽度大小变化时,才需要rpx这类动态宽度单位
  • 一般情况下高度和字体大小是不应该根据屏幕宽度变化的,除非你的字体大小想根据屏幕宽度变化。

拓展:在设置文件mainfest.json里开启px转rpx(默认关闭 "transformPx" : false,),所有的px可一键转换为 rpx:

px转rpx.png

你可能感兴趣的:(uni-app之响应式单位upx和rpx)