【Vue3+Ts project】移动端适配px转vw 之 postcss-px-to-viewport

重温rem 和 vw


rem: 一个rem 是 屏幕的100分之十 ,按照标准375屏幕宽度计算是 37.5
vw:      一个vw是 屏幕的100分之一,按照标准375屏幕宽度计算式是 3.75

 

postcss-px-to-viewport 安装和使用

安装
 

npm install postcss-px-to-viewport -D
# or
yarn add -D postcss-px-to-viewport
# or
pnpm add -D postcss-px-to-viewport

配置
在package.json同级目录下创建 
postcss.config.js 文件
 

// eslint-disable-next-line no-undef
export default {
  plugins: {
    'postcss-px-to-viewport': {
      // 设备宽度375计算vw的值
      viewportWidth: 375,
    },
  },
};



postcss-px-to-viewport 作用:

将px转成vw
流程是: sass --> css --> postcss-px-to-viewport 经过这样的流程最后将单位px转vw


 

为了在Vue3+TS+Vite项目中使用postcss-px-to-viewport-8-plugin,需要按照以下步骤进行操作: 1. 安装依赖: ```shell npm install postcss-px-to-viewport-8-plugin -D ``` 2. 在项目根目录下创建postcss.config.js文件,并添加以下内容: ```javascript const autoprefixer = require('autoprefixer'); const pxtoviewport = require('postcss-px-to-viewport-8-plugin'); module.exports = { plugins: [ autoprefixer(), pxtoviewport({ viewportWidth: 375, // 视窗的宽度,对应设计稿的宽度 viewportHeight: 667, // 视窗的高度,对应设计稿的高度 unitPrecision: 5, // 指定`px`换为视窗单位值的小数位数 viewportUnit: 'vw', // 指定需要换成的视窗单位,建议使用vw selectorBlackList: ['.ignore', '.hairlines'], // 指定不换为视窗单位的类,可以自定义,可以无限添加,建议定义一至两个通用的类名 minPixelValue: 1, // 小于或等于`1px`不换为视窗单位,你也可以设置为你想要的值 mediaQuery: false // 允许在媒体查询中换`px` }) ] } ``` 3. 在vite.config.ts文件中添加postcss配置: ```typescript import { defineConfig } from 'vite'; import vue from '@vitejs/plugin-vue'; export default defineConfig({ plugins: [vue()], css: { postcss: { plugins: [ require('autoprefixer'), require('postcss-px-to-viewport-8-plugin')({ viewportWidth: 375, viewportHeight: 667, unitPrecision: 5, viewportUnit: 'vw', selectorBlackList: ['.ignore', '.hairlines'], minPixelValue: 1, mediaQuery: false }) ] } } }); ``` 4. 重启项目即可实现pxvw
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值