从零开始在vue-cli4配置自适应vw布局的实现


Posted in Javascript onJune 08, 2020

简介

viewportWidth也是vw布局从配置上来说比rem布局简洁了很多,bu需要配置安装lib,也不需要增加一个rem.js文件

简称拎包使用

安装包

npm install postcss-px-to-viewport -D

或者

yarn add postcss-px-to-viewport -D

配置移动端

在vue.config.js中找到loaderOptions,如果没有的话需要在css属性下增加postcss

css: {
  extract: IS_PROD,
  sourceMap: false,
  loaderOptions: {
   postcss: {
    plugins: [
     require("postcss-px-to-viewport")({
      unitToConvert: "px",	// 需要转换的单位,默认为"px"
      viewportWidth: 375,  // 视窗的宽度,对应移动端设计稿的宽度,一般是375
      // viewportHeight:667,// 视窗的高度,对应的是我们设计稿的高度
      unitPrecision: 3,		// 单位转换后保留的精度
      propList: [		// 能转化为vw的属性列表
       "*"
      ],
      viewportUnit: "vw",		// 希望使用的视口单位
      fontViewportUnit: "vw",		// 字体使用的视口单位
      selectorBlackList: [],	// 需要忽略的CSS选择器,不会转为视口单位,使用原有的px等单位。
      minPixelValue: 1,		// 设置最小的转换数值,如果为1的话,只有大于1的值会被转换
      mediaQuery: false,		// 媒体查询里的单位是否需要转换单位
      replace: true,		// 是否直接更换属性值,而不添加备用属性
      exclude: /(\/|\\)(node_modules)(\/|\\)/,		// 忽略某些文件夹下的文件或特定文件,例如 'node_modules' 下的文件
     })
    ]
   }
  }
 },

效果

不同型号下,我们看到字体大小都会跟着改变

从零开始在vue-cli4配置自适应vw布局的实现 

配置pc端

css: {
  extract: IS_PROD,
  sourceMap: false,
  loaderOptions: {
   postcss: {
    plugins: [
     require("postcss-px-to-viewport")({
      unitToConvert: "px",	// 需要转换的单位,默认为"px"
      viewportWidth: 1920,  // 视窗的宽度,对应pc设计稿的宽度,一般是1920
      // viewportHeight: 1080,// 视窗的高度,对应的是我们设计稿的高度
      unitPrecision: 3,		// 单位转换后保留的精度
      propList: [		// 能转化为vw的属性列表
       "*"
      ],
      viewportUnit: "vw",		// 希望使用的视口单位
      fontViewportUnit: "vw",		// 字体使用的视口单位
      selectorBlackList: [],	// 需要忽略的CSS选择器,不会转为视口单位,使用原有的px等单位。
      minPixelValue: 1,		// 设置最小的转换数值,如果为1的话,只有大于1的值会被转换
      mediaQuery: false,		// 媒体查询里的单位是否需要转换单位
      replace: true,		// 是否直接更换属性值,而不添加备用属性
      exclude: /(\/|\\)(node_modules)(\/|\\)/,		// 忽略某些文件夹下的文件或特定文件,例如 'node_modules' 下的文件
     })
    ]
   }
  }
 },

效果

我们以字体为例,同样可以看到字体在不同分辨率的情况下是不一样大小的

从零开始在vue-cli4配置自适应vw布局的实现

参考资料

vue-cli 中使用 postcss-px-to-viewport 插件实现移动端自适应
Vue(vue4.0)项目中,使用响应式布局插件postcss-px-to-viewport

到此这篇关于从零开始在vue-cli4配置自适应vw布局的文章就介绍到这了,更多相关从零开始在vue-cli4配置自适应vw布局内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
脚本吧 - 幻宇工作室用到js,超强推荐share.js
Dec 23 Javascript
javascript/jquery获取地址栏url参数的方法
Mar 05 Javascript
js实现可控制左右方向的无缝滚动效果
May 29 Javascript
JS识别浏览器类型(电脑浏览器和手机浏览器)
Nov 18 Javascript
JavaScript cookie详解及简单实例应用
Dec 31 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
Aug 06 Javascript
基于js中style.width与offsetWidth的区别(详解)
Nov 12 Javascript
关于Vue组件库开发详析
Jul 01 Javascript
解决vue 打包发布去#和页面空白的问题
Sep 04 Javascript
vue 项目 iOS WKWebView 加载
Apr 17 Javascript
js实现数字滚动特效
Dec 16 Javascript
Vue项目如何引入bootstrap、elementUI、echarts
Nov 26 Vue.js
详解Vue Cli浏览器兼容性实践
Jun 08 #Javascript
解决微信授权成功后点击按返回键出现空白页和报错的问题
Jun 08 #Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
Jun 08 #Javascript
基于javascript处理二进制图片流过程详解
Jun 08 #Javascript
vue-router的hooks用法详解
Jun 08 #Javascript
Vue自定义render统一项目组弹框功能
Jun 07 #Javascript
用云开发Cloudbase实现小程序多图片内容安全监测的代码详解
Jun 07 #Javascript
You might like
WML,Apache,和 PHP 的介绍
2006/10/09 PHP
php实现微信扫码自动登陆与注册功能
2016/09/22 PHP
redis查看连接数及php模拟并发创建redis连接的方法
2016/12/15 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
基于prototype的validation.js发布2.3.4新版本,让你彻底脱离表单验证的烦恼
2006/12/06 Javascript
jquery京东商城双11焦点图多图广告特效代码分享
2015/09/06 Javascript
在javascript中随机数 math random如何生成指定范围数值的随机数
2015/10/21 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
js仿小米官网图片轮播特效
2016/09/29 Javascript
Bootstrap如何激活导航状态
2017/03/22 Javascript
JS SetInterval 代码实现页面轮询
2017/08/11 Javascript
Angular 2 利用Router事件和Title实现动态页面标题的方法
2017/08/23 Javascript
SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
2018/01/09 Javascript
详解AngularJS之$window窗口对象
2018/01/17 Javascript
发布一款npm包帮助理解npm的使用
2019/01/03 Javascript
vue+iview/elementUi实现城市多选
2019/03/28 Javascript
Electron-vue开发的客户端支付收款工具的实现
2019/05/24 Javascript
Vue之Mixins(混入)的使用方法
2019/09/24 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
JS插入排序简单理解与实现方法分析
2019/11/25 Javascript
vue-路由精讲 二级路由和三级路由的作用
2020/08/06 Javascript
JavaScript实现手风琴效果
2021/02/18 Javascript
python实现猜数字游戏(无重复数字)示例分享
2014/03/29 Python
Python的爬虫包Beautiful Soup中用正则表达式来搜索
2016/01/20 Python
微信跳一跳自动运行python脚本
2018/01/08 Python
Python数据抓取爬虫代理防封IP方法
2018/12/23 Python
在python tkinter界面中添加按钮的实例
2020/03/04 Python
GAZMAN官网:澳大利亚领先的男装品牌
2019/12/19 全球购物
私有程序集与共享程序集有什么区别
2013/04/05 面试题
介绍一下except的用法和作用
2015/01/22 面试题
收银员的岗位职责范本
2014/02/04 职场文书
幼儿园优秀教师事迹
2014/02/13 职场文书
《钱学森》听课反思
2014/03/01 职场文书
在宿舍喝酒的检讨书
2014/09/28 职场文书
python字典进行运算原理及实例分享
2021/08/02 Python
Win11更新失败并提示0xc1900101
2022/04/19 数码科技