从零开始在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之编码规范 推荐
May 23 Javascript
jquery实现盒子下拉效果示例代码
Sep 12 Javascript
js动画效果制件让图片组成动画代码分享
Jan 14 Javascript
JS日期加减,日期运算代码
Nov 05 Javascript
JS表格组件BootstrapTable行内编辑解决方案x-editable
Sep 01 Javascript
jQuery EasyUI Draggable拖动组件
Mar 01 Javascript
js仿淘宝商品放大预览功能
Mar 15 Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
Jun 13 Javascript
vue中实现在外部调用methods的方法(推荐)
Feb 08 Javascript
JS闭包经典实例详解
Dec 20 Javascript
原生JS使用Canvas实现拖拽式绘图功能
Jun 05 Javascript
JS+HTML实现自定义上传图片按钮并显示图片功能的方法分析
Feb 12 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
php时区转换转换函数
2014/01/07 PHP
改写ThinkPHP的U方法使其路由下分页正常
2014/07/02 PHP
JavaScript While 循环基础教程
2007/04/05 Javascript
cookie丢失问题(认证失效) Authentication (用户验证信息)也会丢失
2009/06/04 Javascript
实现png图片和png背景透明(支持多浏览器)的方法
2009/09/08 Javascript
javascript动态的改变IFrame的高度实现自动伸展
2013/10/12 Javascript
JavaScript插件化开发教程 (四)
2015/01/27 Javascript
js实现精美的银灰色竖排折叠菜单
2015/05/16 Javascript
JavaScript对象数组排序函数及六个用法
2015/12/23 Javascript
个人网站留言页面(前端jQuery编写、后台php读写MySQL)
2016/05/03 Javascript
又一枚精彩的弹幕效果jQuery实现
2016/07/25 Javascript
基于jQuery制作小图标上下滑动特效
2017/01/18 Javascript
JS中如何实现点击a标签返回页面顶部的问题
2017/01/19 Javascript
微信小程序开发图片拖拽实例详解
2017/05/05 Javascript
easyui combogrid实现本地模糊搜索过滤多列
2017/05/13 Javascript
ES6 如何改变JS内置行为的代理与反射
2019/02/11 Javascript
js实现简单的打印表格
2020/01/15 Javascript
9种方法优化jQuery代码详解
2020/02/04 jQuery
jquery检测上传文件大小示例
2020/04/26 jQuery
node koa2 ssr项目搭建的方法步骤
2020/12/11 Javascript
Python装饰器使用实例:验证参数合法性
2015/06/24 Python
简单实现python爬虫功能
2015/12/31 Python
利用Tkinter(python3.6)实现一个简单计算器
2017/12/21 Python
手把手教你用python抢票回家过年(代码简单)
2018/01/21 Python
快速解决PyCharm无法引用matplotlib的问题
2018/05/24 Python
python简易远程控制单线程版
2018/06/20 Python
Python 中的lambda函数介绍
2018/10/10 Python
Django Xadmin多对多字段过滤实例
2020/04/07 Python
REISS英国官网:伦敦High Street最受欢迎品牌
2016/12/21 全球购物
培训演讲稿范文
2014/01/12 职场文书
优秀干部获奖感言
2014/01/31 职场文书
金融学专科生自我鉴定
2014/02/21 职场文书
计生专干事迹
2014/05/28 职场文书
股份合作协议书
2014/09/10 职场文书
中职毕业生自我鉴定
2014/09/13 职场文书
营业员岗位职责
2015/02/11 职场文书