移动端单位适配postcss-px-to-viewport

文章介绍了移动端开发中使用rem进行适配的传统方法及其局限性,然后重点推荐了postcss-px-to-viewport插件,该插件能将px转换为视口单位vw,解决不同项目中px与视口单位比例不一的问题,通过配置文件实现自动转换,简化开发过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在之前使用的较为古老移动端适配方案rem,下面这两句代码,有不少老移动端都不会陌生:

const devicewidth = document.documentElement.clientwidth || document.body.clientwidth
document.querySelector('html').style.fontSize = devicewidth / 7.5 + ' px'

在移动端UI稿尺寸为7501334满天飞的时代,这两句代码确实给开发者带来了很大的方便,这样设置根font-size后,px和rem的转换比例成了100, 比如UI稿一个长宽分别为120px40px,那么开发者对应的写成1.2rem*0.4rem就可以了

这种换算已经是颇为方便,但是并非所有的项目都能这样去设置一个方便换算的比例系数,当比例系数为100时,小数点往前面挪两位就行了,然而有的项目设置的换算系数千奇百怪,有50的,有16的,很多已经严重超出口算力所能及的范畴了。

postcss-px-to-viewport

postcss-px-to-viewport完美解决以上痛点,它将px转换成视口单位vwvw本质上还是一种百分比单位,100vw即等于100%,即window.innerWidth

安装插件

执行命令npm install postcss-px-to-viewport -D

配置文件

在根目录下新加文件postcss.config.js添加如下配置

module.exports = {
  plugins:{
     "postcss-px-to-viewport":{
        unitToConvert: 'px',//要转化的单位
        viewportWidth: 320, //ui设计稿的宽度
     }
  },
}

查看效果

编写样式设置宽度

.con{
    width: 200px;
    background-color: red;
    font-size: 15px;
}

效果

在这里插入图片描述

可以看到代码中px单位 在页面中自动转换为vw单位

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值