JavaScript相关概念

本文详细介绍了移动端布局中常用的长度单位px、em、rem、vw和rpx的区别及应用场景。rem和vw适用于普通Web项目,而rpx则是小程序特有的。在屏幕适配时,理解设计稿尺寸和单位换算至关重要。通过设置不同工具,如vscode插件、flexible.js和postcss转换插件,可以轻松实现单位转换和屏幕适配。
摘要由CSDN通过智能技术生成

px、em、rem、vw、rpx 之间有什么区别?

单位名称说明web小程序
px绝对单位。代表像素数量支持支持
em相对单位。相对于父元素的字体大小支持支持
rem相对单位。相对于页面根标签 html 的字体大小支持不支持
vw相对单位。相对于视口的宽度大小 100vw 等于视口的宽度支持支持
rpx相对单位。 小程序中独有 , 750rpx 等于视口的宽度不支持支持

屏幕适配的原理

 

做移动端布局时,希望页面可以做到用户的手机屏幕越大、看见的页面元素就越大。因此,只能使用相对长度单位。

实际开发中,rem、vw、rpx 是我们比较常用的相对长度单位。

而使用它们的核心思想,就在于要搞懂

设计稿!!! 大小是 375px !!!

  1. 换算的比例

    1rem 等于 多少 px  设计稿
    1vw 等于 多少 px 设计稿
    1rpx 等于多少 px 设计稿
  2. 或者是和屏幕宽度的对应关系

    多少 rem 等于屏幕的宽度
    多少 vw 等于屏幕的宽度
    多少 rpx 等于屏幕的宽度
  3. 在搞清楚以上信息后,后续只要在不同的换算工具中代入以上的比例关系即可

 

普通项目中使用

原生的 html、css、JavaScript 直接运行的项目

直接在 vscode 中安装对应的插件即可

rem

需要引入外部 js 来动态处理 html 的字体大小 如 flexible.js

 

 

 settings.json

  "cssrem.rootFontSize": 10 /* 10  10rem=屏幕的宽度   */

 

vw

 settings.json

"px2vw.width": 750 /* 设计稿的宽度 */

 

rpx  

setting.json

"px-to-rpx.baseWidth": 375,/* 设计稿的宽度 */

 


基于 webpack 的项目使用

基于 webpack 打包的前端项目

webpack 有工具, 可以写 px, 自动转 rem Vant 3 - Mobile UI Components built on Vue

rem

  1. 安装 lib-flexible

    npm i lib-flexible   postcss-pxtorem@^5.1.1
    yarn add lib-flexible   postcss-pxtorem@^5.1.1
    
  2. 引入 main.js

    import "lib-flexible";

  3. 观察 10rem = 屏幕的宽度

  4. postcss.config.js 中 编辑

    module.exports = {
    
      plugins: {
        'postcss-pxtorem': {
          /*  在设计稿的宽度下 1rem = 多少px 37.5     10rem=屏幕的宽度   */
          rootValue: 37.5,
          propList: ['*'],
        },
      },
    
    };

vw

  1. 安装依赖
    npm i postcss-px-to-viewport
    yarn add postcss-px-to-viewport
  2. postcss.config.js 中配置
    module.exports = {
    
      plugins: {
        'postcss-px-to-viewport': {
          viewportWidth: 100 /* 100 设计稿的宽度 */,
        },
      },
    
    };

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值