从零开始在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 相关文章推荐
浅谈Javascript数组索引
Jul 29 Javascript
js跨浏览器的事件侦听器和事件对象的使用方法
Dec 17 Javascript
Bootstrap树形组件jqTree的简单封装
Jan 25 Javascript
JavaScript中的闭包
Feb 24 Javascript
基于JS实现导航条之调用网页助手小精灵的方法
Jun 17 Javascript
JavaScript中Math对象的方法介绍
Jan 05 Javascript
Angular.js中处理页面闪烁的方法详解
Mar 09 Javascript
微信小程序使用audio组件播放音乐功能示例【附源码下载】
Dec 08 Javascript
vue  自定义组件实现通讯录功能
Sep 30 Javascript
JavaScript学习教程之cookie与webstorage
Jun 23 Javascript
vue.js 2.0实现简单分页效果
Jul 29 Javascript
vue使用showdown并实现代码区域高亮的示例代码
Oct 17 Javascript
详解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
解决Codeigniter不能上传rar和zip压缩包问题
2014/03/07 PHP
如何解决PHP无法实现多线程的问题
2015/09/25 PHP
PHP/ThinkPHP实现批量打包下载文件的方法示例
2017/07/31 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
2020/10/30 PHP
特殊字符、常规符号及其代码对照表
2006/06/26 Javascript
对YUI扩展的Gird组件 Part-2
2007/03/10 Javascript
用unescape反编码得出汉字示例
2014/04/24 Javascript
Internet Explorer 11 浏览器介绍:别叫我IE
2014/09/28 Javascript
简述AngularJS的控制器的使用
2015/06/16 Javascript
使用jquery+CSS3实现仿windows10开始菜单的下拉导航菜单特效
2015/09/24 Javascript
全面解析Bootstrap布局组件应用
2016/02/22 Javascript
什么是JavaScript中的结果值?
2016/10/08 Javascript
浅谈EasyUI常用控件的禁用方法
2016/11/09 Javascript
js滚轮事件兼容性问题需要注意哪些
2016/11/15 Javascript
VUE实现表单元素双向绑定(总结)
2017/08/08 Javascript
Angular4学习笔记router的简单使用
2018/03/30 Javascript
浅谈AngularJS中$http服务的简单用法
2018/05/15 Javascript
详解如何使用webpack打包JS
2018/06/21 Javascript
element ui table(表格)实现点击一行展开功能
2018/12/04 Javascript
vue element upload实现图片本地预览
2019/08/20 Javascript
js实现省级联动(数据结构优化)
2020/07/17 Javascript
OpenLayer3自定义测量控件MeasureTool
2020/09/28 Javascript
详解JavaScript中分解数字的三种方法
2021/01/05 Javascript
Tensorflow中的降维函数tf.reduce_*使用总结
2020/04/20 Python
C#如何允许一个类被继承但是避免这个类的方法被重载?
2015/02/24 面试题
保洁主管岗位职责
2013/11/20 职场文书
优秀员工个人的自我评价
2013/11/29 职场文书
大学生如何写自荐信
2014/01/08 职场文书
报关专员求职信范文
2014/02/22 职场文书
社会治安综合治理管理责任书
2014/04/16 职场文书
2014年教师业务学习材料
2014/05/12 职场文书
电子信息工程专业求职信
2014/06/28 职场文书
走进敬老院活动总结
2014/07/10 职场文书
个人售房合同协议书
2016/03/21 职场文书
浅谈怎么给Python添加类型标注
2021/06/08 Python