这里不考虑大屏,所以不做amfe-flexible的配置

首先是安装依赖

  1. yarn add postcss-loader postcss-pxtorem -D
  2. yarn add autoprefixer -D

然后新建postcss.config.js文件

  1. module.exports = {
  2. 'plugins': {
  3. 'autoprefixer': {
  4. overrideBrowserslist: [
  5. 'Android 4.1',
  6. 'iOS 7.1',
  7. 'Chrome > 31',
  8. 'not ie <= 11', //不考虑IE浏览器
  9. 'ff >= 30', //仅新版本用“ff>=30
  10. '> 1%',// 全球统计有超过1%的使用率使用“>1%”;
  11. 'last 2 versions', // 所有主流浏览器最近2个版本
  12. ],
  13. grid: true ,// 开启grid布局的兼容(浏览器IE除外其他都能兼容grid,可以关闭开启)
  14. },
  15. 'postcss-pxtorem': {
  16. rootValue: 37.5, // 设计稿宽度除以 10, 开头大写的Px 不转换 => height: 100Px, 内联样式不转换,需要 / 75 转成 rem
  17. unitPrecision: 6, // 计算结果保留 6 位小数
  18. selectorBlackList: ['.no-rem', 'no-rem'], // 要忽略的选择器并保留为px。
  19. propList: ['*'], // 可以从px更改为rem的属性 感叹号开头的不转换
  20. replace: true, // 转换成 rem 以后,不保留原来的 px 单位属性
  21. mediaQuery: true, // 允许在媒体查询中转换px。
  22. minPixelValue: 2, // 设置要替换的最小像素值。
  23. exclude: /node_modules/i // 排除 node_modules 文件(node_modules 内文件禁止转换)
  24. }
  25. }
  26. }

不要用require的方式引入,否则会报错,就像下面的这种引入方式会报样式错误

  1. module.exports = {
  2. "plugins": [
  3. require('postcss-import'),
  4. require('postcss-url'),
  5. require('autoprefixer')({browsers: ['Android >= 4.0', 'iOS >= 7']}),
  6. require('postcss-pxtorem')({
  7. rootValue: 75, // 设计稿宽度除以 10, 开头大写的Px 不转换 => height: 100Px, 内联样式不转换,需要 / 75 转成 rem
  8. unitPrecision: 6, // 计算结果保留 6 位小数
  9. selectorBlackList: ['am-'], // 排除,am-开头的class,不进行rem转换
  10. propList: ['*', '!font-weight', '!letter-spacing'], // 可以从px更改为rem的属性 感叹号开头的不转换
  11. replace: true, // 转换成 rem 以后,不保留原来的 px 单位属性
  12. mediaQuery: true, // 允许在媒体查询中转换px。
  13. minPixelValue: 0, // 设置要替换的最小像素值。
  14. exclude: /node_modules/i // 排除 node_modules 文件(node_modules 内文件禁止转换)
  15. })
  16. ]
  17. }

报错如图,会有三个这样的报错

[vite] Internal server error: Unexpected string
Plugin: vite:css

vue3.0+vite+ts项目搭建-postcss-pxtorem 实现移动自适应(五)的更多相关文章

  1. vue3.0+vite+ts项目搭建--基础配置(二)

    集成vue-router 使用yarn yarn add vue-router@next --save 安装完成之后在src目录下创建文件夹router/index.ts,创建完成之后需要在Vue-R ...

  2. vue3.0+vite+ts项目搭建--初始化项目(一)

    vite 初始化项目 使用npm npm init vite@latest 使用yarn yarn create vite 使用pnpm pnpx create-vite 根据提示输入项目名称,选择v ...

  3. vue3.0+vite+ts项目搭建--vite.config.ts配置(三)

    vite.config.ts配置 配置路径处理模块 安装ts的类型声明文件 yarn add @types/node -D 通过配置alias来定义路径的别名 resolve: { alias: { ...

  4. vue3.0+vite+ts项目搭建-axios封装(六)

    封装方式一 import axios from 'axios' import qs from 'qs' import { Toast } from 'vant' import Lockr from ' ...

  5. vue3.0+vite+ts项目搭建-分环境打包(四)

    分环境打包配置 新建.env.dev(或者.env) VITE_NODE_ENV = 'dev' VITE_HOST = 'http://local.host.com' 执行yarn dev ,控制台 ...

  6. vue3.0+vite+ts项目搭建(报错处理)

    报错一 warning package.json: No license field$ vue-tsc --noEmit && vite build 解决方案,添加这两行,只添加一个是 ...

  7. vite + ts 快速搭建 vue3 项目 以及介绍相关特性

    博客地址:https://ainyi.com/98 Vue3.0,One Piece 接下来得抽空好好学习了 vite 尤大在 Vue 3.0 beta 直播中推荐了 vite 的工具,强调:针对Vu ...

  8. webpack 4 :从0配置到项目搭建

    webpack4发布以来,我写项目都是用脚手架,即使再简单的项目,真的是really shame..虽然道听途说了很多 webpack4 的特性,却没有尝试过,因为它给人的感觉就是,em...很难.但 ...

  9. vue3.0脚手架 创建项目

    1.下载node最新稳定版本,并且安装 2.安装好之后,在cmd或者terminal下, 使用npm -v 查看当前npm版本,验证是否安装成功 3.安装成功后,运行 npm i -g @vue/cl ...

随机推荐

  1. Identity Server 4 从入门到落地(十二)—— 使用Nginx集成认证服务

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  2. Linux core 文件浅析

    浅析Linux下core文件 当我们的程序崩溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员找到程序出现问题的地方.最常出 现的,几乎所有C程序员都出现过的错误就是"段错误& ...

  3. 材料资源和成本资源(Project)

    <Project2016 企业项目管理实践>张会斌 董方好 编著 第二种资源就是[材料资源]啦~ 拿到资源第一件事就是输入基本信息,这个,不复读了,复读得我自己都嫌烦.好吧,还得说明一下, ...

  4. 丈量你的代码,从cloc开始

    如果我想统计我当前的项目有多少代码量?行数最高的代码文件有哪些?并且排除某些目录,怎么统计?要统计出注释多少行,和代码多少行?使用cloc就行. cloc是一款使用Perl语言开发的开源代码统计工具, ...

  5. flutter 学习笔记

    常用属性 container 填充padding,边距margins,边框borders,背景色color, decoration: 渐变gradient-Alignment(x,y),圆角borde ...

  6. js(jQuery)获取自定义data属性的值

    有时候因为需要在标签上设置自定义data属性值, <div class="col-sm-6 col-md-4" id="get_id" data-c_id ...

  7. win10使用cmake配置fmt生成vs2015解决方案(fmt version 7.0.1)

    !!版权声明:本文为博主原创文章,版权归原文作者和博客园共有,谢绝任何形式的 转载!! 作者:mohist 本文仅为参考,请以实际情况为准, fmt版本: 7.0.1 准备 下载源码fmt : htt ...

  8. 惊!世界上竟然有O(N)时间复杂度的排序算法!计数排序!

    啥?你以为排序算法的时间复杂度最快也只能O(N*log(N))了? O(N)时间复杂度的排序算法听说过没有?计数排序!!它是世界上最快最简单的算法!!! 计数排序算法操作起来只有三步,看完秒懂! 根据 ...

  9. 【九度OJ】题目1433:FatMouse 解题报告

    [九度OJ]题目1433:FatMouse 解题报告 标签(空格分隔): 九度OJ http://ac.jobdu.com/problem.php?pid=1433 题目描述: FatMouse pr ...

  10. 【LeetCode】540. Single Element in a Sorted Array 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 解题方法 方法一:异或 方法二:判断相邻元素是否相等 方法三:二分查找 ...