代码先锋网 代码片段及技术文章聚合

UNI-APP开发之style单位(upx、rpx、vw、vh、px)之间的转换

技术标签: uni-app  uni-app  vue

  1.vw:1vw等于视口宽度的1%。    100vw等于窗口的宽度

  2.vh:1vh等于视口高度的1%。    100vh等于窗口的高度

  3.vmin:选取vw和vh中最小的那个。

  4.vmax:选取vw和vh中最大的那个。

uni-app 使用 upx 作为默认尺寸单位, upx 是相对于基准宽度的单位,可以根据屏幕宽度进行自适应。uni-app 规定屏幕基准宽度750upx。

开发者可以通过设计稿基准宽度计算页面元素 upx 值,设计稿 1px 与框架样式 1upx 转换公式如下:

设计稿 1px / 设计稿基准宽度 = 框架样式 1upx / 750upx

举例说明:

  1. 若设计稿宽度为 640px,元素 A 在设计稿上的宽度为 100px,那么元素 A 在 uni-app 里面的宽度应该设为750 * 100 / 640,结果为:117upx
  2. 若设计稿宽度为 375px,元素 B 在设计稿上的宽度为 200px,那么元素 B 在 uni-app 里面的宽度应该设为750 * 200 / 375结果为:400upx

1、动态绑定的 style 不支持直接使用 upx

<!-- - 静态upx赋值生效 -->
<view class="test" style="width:200upx"></view>
<!-- - 动态绑定不生效 -->
<view class="test" :style="{width:winWidth + 'upx;'}"></view>

2、使用 uni.upx2px(Number) 转换为 px 后再赋值。

<template>
    <view>
        <view class="half-width" :style="{width: halfWidth}">
            半屏宽度
        </view>
    </view>
</template>
 
<script>
    export default {
        computed: {
            halfWidth() {
                return uni.upx2px(750 / 2) + 'px';
            }
        }
    }
</script>
<style>
    .half-width {
        background-color: #FF3333;
    }
</style>

rpx单位是微信小程序中css的尺寸单位,rpx可以根据屏幕宽度进行自适应。

规定屏幕宽为750rpx。如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = 750物理像素,1rpx = 0.5px

设备 rpx换算px (屏幕宽度/750) px换算rpx (750/屏幕宽度)
iPhone5 1rpx = 0.42px    1px = 2.34px
iPhone6 1rpx = 0.5px     1px = 2rpx
iPhone6s 1rpx = 0.552px    1px = 1.81rpx

版权声明:本文为xialong_927原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xialong_927/article/details/110119409

智能推荐

Css单位px,rem,em,vw,vh的区别

px px就是pixel像素的缩写,相对长度单位,网页设计常用的基本单位。像素px是相对与屏幕分辨率而言的。 这就是为啥我们在项目中使用px作为单位,在各种设备上也不会发生比例失调的原因 em em是相对长度单位。相对当前节点的字体大小(font-size)。如果本节点没有font-size,那么就取父节点的。 em适用于小区域的环境 rem rem是CSS3新增的一个相对单位,rem是相对HTM...

px和rpx的单位转换

rpx转px: px转rpx:...

uniapp px rpx 转换

uniapp 内置了 rpx 转 px 的方法 px 转 rpx...

px、rpx、em、rem 、vw/vh、百分比的区别?

px 绝对长度单位,根据维基百科解释:它是图像显示的基本单元,既不是一个确定的物理量,也不是一个点或者小方块,而是一个抽象概念。很多时候,px 也常被称为 CSS 像素,在 PC 中,通常认为 1px 的真实长度是固定的 那 px 真的是一个设备无关,跟长度单位米和分米一样是固定大小的吗? 一个像素表示了计算机屏幕所能显示的最小区域,像素分为两种类型: CSS 像素:为 Web 开发者提供,在 C...

px、rpx、em、rem 、vw/vh、百分比的区别?

px:绝对长度单位,来描述一个元素的宽高以及定位信息 rpx:微信小程序独有的、解决屏幕自适应的尺寸单位 em:相对单位,基准点为父节点字体的大小,如果自身定义了font-size按自身来计算(浏览器默认16px)em作为字体单位,相对于父元素字体大小;em作为行高单位时,相对于自身字体大小,整个页面内 1em 不是一个固定的值。 rem:相对单位,可理解为”root em&rdquo...

猜你喜欢

CSS之vw,vh视口单位与%的区别

CSS中的vw,vh单位是什么? vw:浏览器可见视口【宽度】的百分比(1vw代表视窗【宽度】的1%) vh:浏览器可见视口【高度】的百分比(1vw代表视窗【高度】的1%) vmin:当前 vw 和 vh 较小的一个值。 vmax:当前 vw 和 vh 中较大的一个值。 注:视窗 与 可见视口 是一个意思 vw,vh与 % 的区别是什么? % 是基于【父元素】的宽度/高度的百分比,vw,vh是根据...

uniapp px rpx 互相转换

1、rpx 转 px uniapp 内置了 rpx 转 px 的方法,源码见下方: 2、px 转 rpx 由于 uniapp 已经有 upx2px 的方法,可以简单的得出反向取值的公式,源码见下方: 作者:黄河爱浪 QQ:1846492969,邮箱:[email protected] 本文原创,著作权归作者所有,转载...

web前端CSS之“px、em、rem、%、vw、vh单位”区别

1 、px px就是pixel(像素)的缩写,相对长度单位,相对于屏幕分辨率。 2、em 参考物是父元素的font-size,具有继承的特点。浏览器默认字体是16px,整个页面内1em不是一个固定的值。 字体大小同样都是1.5em,但是效果却截然不同,按照W3C提供的公式,我们可以计算下: class为id1的div字体大小继承自父元素body:16px*1.5em = 24px class为id...