rpx 即响应式 px,一种根据屏幕宽度自适应的动态单位。以 750 宽的屏幕为基准,750rpx 恰好为屏幕宽度。屏幕变宽,rpx 实际显示效果会等比放大,但在 App(vue2 不含 nvue) 端和 H5(vue2) 端屏幕宽度达到 960px 时,默认将按照 375px 的屏幕宽度进行计算
在 uni-app 里,rpx 是把屏幕宽度均分为 750 份,每份就是 1rpx。当设计稿的宽度超过 750px 时,要把设计稿上的尺寸转换为 rpx,可按下面的公式来计算:
rpx值 = (设计稿尺寸 / 设计稿宽度) × 750
举个例子,设计稿的宽度为 1080px,上面某个元素的宽度是 216px,那么转换为 rpx 的计算过程是:
rpx值 = (216 / 1080) × 750 = 150rpx
要是你经常需要进行这样的转换,可以写一个简单的函数来帮忙:
function pxToRpx(px, designWidth = 1080) {
return (px / designWidth) * 750;
}
// 调用示例
const widthInRpx = pxToRpx(216); // 结果为150