使用postcss-pxtorem进行自适应

目录

一、下载插件

二、在utils文件夹下新建rem.js文件

三、在main.js中引入rem.js 

四、在根目录新建.postcssrc.js文件


一、下载插件

npm i postcss-pxtorem -S

二、在utils文件夹下新建rem.js文件

// 跟.postcssrc.js里的rootValue的值是一致的
const baseSize = 100
// 设置rem函数
function setRem() {
  // 当前页面宽度相对于1920宽的缩放比例,可根据自己需要修改。pc端一般使用的是1920,这里使用1920px
  const scale = document.documentElement.clientWidth / 1920
  // 设置页面根节点字体大小,最高为两倍图,及设计稿为1920*2
  console.log((baseSize * Math.min(scale, 2)), '8888')
  document.documentElement.style.fontSize = ((baseSize * Math.min(scale, 2)) > 12 ? (baseSize * Math.min(scale, 2)) : 12) + 'px'
  console.log(document.documentElement.style.fontSize, '8888')
}
// 初始化
setRem()
// 改变窗口大小时重新设置rem
window.onresize = function() {
  setRem()
}

三、在main.js中引入rem.js 

import '@/utils/rem' 

四、在根目录新建.postcssrc.js文件

// https://github.com/michael-ciniawsky/postcss-load-config

module.exports = {
  'plugins': {
    'postcss-pxtorem': {
      rootValue: 100, // 换算基数,默认100,把根标签的font-size规定为1rem为50px,在设计稿上量出多少px直接在代码中写多少px
      // unitPrecision: 5,  //保留rem小数点多少位
      propList: ['*'] //  存储将被转换的属性列表,'!font-size' 即不对字体进行rem转换
      // selectorBlackList: ['.radius'], // 要忽略并保留为px的选择器,例如fs-xl类名,里面有关px的样式将不被转换,支持正则写法。
      // replace: true,
      // mediaQuery: false,//(布尔值)媒体查询( @media screen 之类的)中不生效
      // minPixelValue: 12,///设置要替换的最小像素值,px小于12的不会被转换
      // //propWhiteList: [],  //默认值是一个空数组,这意味着禁用白名单并启用所有属性
      // propBlackList: ['font-size'], //黑名单
    }
  }
}

注意:如果没设置文字大小会按照100px进行设置

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 HTML 中使用 postcss-pxtorem 实现自适应屏幕的步骤如下: 1. 安装 postcss-pxtorem 插件: 可以使用 npm 安装:`npm install postcss-pxtorem --save-dev` 2. 在项目中创建 postcss.config.js 文件: 在项目根目录下新建一个 postcss.config.js 文件,用于配置 postcss-pxtorem 插件。 ```javascript module.exports = { plugins: { "postcss-pxtorem": { rootValue: 16, // 根字体大小,16px 为默认值 propList: ["*"] // 需要转换的 CSS 属性,默认为 ['*'] } } }; ``` 3. 在项目中安装并使用 postcss-loader: postcss-loader 可以帮助我们在构建项目时自动运行 postcss 插件。 可以使用 npm 安装:`npm install postcss-loader --save-dev` 在 webpack 配置文件中添加 postcss-loader: ```javascript module.exports = { module: { rules: [ { test: /\.css$/, use: [ "style-loader", "css-loader", { loader: "postcss-loader", options: { ident: "postcss", plugins: [require("postcss-pxtorem")()] } } ] } ] } }; ``` 4. 在 CSS 中使用 px 单位编写样式: 在 CSS 中使用 px 单位编写样式,postcss-pxtorem 插件会自动将其转换为 rem 单位。 例如,假设设计稿中某个元素的宽度为 100px,那么在 CSS 中可以这样写: ```css .box { width: 100px; } ``` 在 postcss-pxtorem 插件的转换下,该样式会被转换为: ```css .box { width: 6.25rem; /* 假设根字体大小为 16px */ } ``` 通过以上步骤,就可以在 HTML 中使用 postcss-pxtorem 实现自适应屏幕了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值