vue项目在webpack2实现移动端字体自适配功能


Posted in Javascript onJune 02, 2020

使用vue开发移动端页面时,往往需要实现页面根据不同设备屏幕进行尺寸的适配,实现将px自动换算成rem单位,其实只需要安装下面的两个插件即可快速实现移动端适配问题。

1 准备工作:
a. 安装 px2rem-loader 插件:npm install px2rem-loader --save;

b. 安装 lib-flexible 插件:npm install lib-flexible --save;

2 插件的作用:
px2rem-loader插件的作用:我们通过配置基准,实现将px自动换算成rem,
lib-flexible插件的作用:根节点会根据页面视口变化而变化font-size大小。

3 在utils.js文件配置px2rem-loader:
安装完上边两个插件后,可以在package.json中查看到是否安装成功,以及他们的版本信息,其实一般安装插件时,如果没有自己指定版本,基本都会自动安装最新的版本。

vue项目在webpack2实现移动端字体自适配功能

4.打开build目录里边的utils.js文件:

vue项目在webpack2实现移动端字体自适配功能

找到下边对应的位置,添加红色框的代码:

比如我拿到的是750的设计稿,而我这里又配置成以750为基准,所以写样式时,设计稿标注的是多少px我就直接写成多少px就行,浏览器会自动换算rem单位。

vue项目在webpack2实现移动端字体自适配功能

在当前文件中,找到下边的generateLoaders (loader, loaderOptions)方法,将刚才新加的px2remLoader对象添加到下边下划线位置即可

vue项目在webpack2实现移动端字体自适配功能

然后打开当前项目的首页入口文件index.html:

vue项目在webpack2实现移动端字体自适配功能

新增meta标签:

vue项目在webpack2实现移动端字体自适配功能

关于上图中meta标签里边相关属性的简单描述:

viewport:简单来说就是指当前移动设备浏览器用于显示网页内容的可视区域,移动设备一般会自动给它设置默认值为980px或1024px(详细信息有兴趣可以自行网上查看下);

width=device-width:表示当前布局视口与理想视口一致 ( js获取理想视口:window.screen.width )。

initial-scale:设置页面初次显示时的缩放比例,值为1.0时表示当前显示的是未经缩放的页面。

其实在content里边还可以设置其它属性,比如:

maximum-scale:页面的最大缩放比例;

minimum-scale:页面的最小缩放比例;

user-scalable:用户是否可以手动缩放页面,值可以为no或yes,分别表示不允许缩放和允许缩放。

4 在项目中使用lib-flexible:

只需要在当前项目的main.js中引入:lib-flexible/flexible

vue项目在webpack2实现移动端字体自适配功能

5 效果:

vue项目在webpack2实现移动端字体自适配功能
vue项目在webpack2实现移动端字体自适配功能

6 总结:

通过上边在utils.js文件中对使用px2rem进行相关的中配置后,成功实现了自动将px换算成rem;

在main.js中引入lib-flexible/flexible,成功实现根节点根据页面视口变化而变化font-size大小。

画重点:
配置了rem,项目中样式直接写px就行,浏览器中看到的都是自动换算成rem的

到此这篇关于vue项目在webpack2实现移动端字体自适配的文章就介绍到这了,更多相关vue webpack2 移动端字体自适配内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
关于setInterval、setTimeout在jQuery中的使用注意事项
Sep 28 Javascript
文本框根据输入内容自适应高度的代码
Oct 24 Javascript
面向对象继承实例(a如何继承b问题)(自写)
Jul 01 Javascript
javascript生成大小写字母
Jul 03 Javascript
JavaScript实现阿拉伯数字和中文数字互相转换
Jun 12 Javascript
详解js运算符单竖杠“|”与“||”的用法和作用介绍
Nov 04 Javascript
Ionic2调用本地SQlite实例
Apr 22 Javascript
jquery select插件异步实时搜索实例代码
Oct 20 jQuery
[原创]js实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
Feb 14 Javascript
Express本地测试HTTPS的示例代码
Jun 06 Javascript
JS实现将对象转化为数组的方法分析
Jan 21 Javascript
vue新建项目并配置标准路由过程解析
Dec 09 Javascript
React实现类似淘宝tab居中切换效果的示例代码
Jun 02 #Javascript
实例分析javascript中的异步
Jun 02 #Javascript
vue + node如何通过一个Txt文件批量生成MP3并压缩成Zip
Jun 02 #Javascript
js简单实现自动生成表格功能示例
Jun 02 #Javascript
JS中准确判断变量类型的方法
Jun 01 #Javascript
Vuex中的Mutations的具体使用方法
Jun 01 #Javascript
vue使用自定义事件的表单输入组件用法详解【日期组件与货币组件】
Jun 01 #Javascript
You might like
用PHP实现维护文件代码
2007/06/14 PHP
php快速url重写更新版[需php 5.30以上]
2010/04/25 PHP
php 转换字符串编码 iconv与mb_convert_encoding的区别说明
2011/11/10 PHP
phpMyAdmin 链接表的附加功能尚未激活问题的解决方法(已测)
2012/03/27 PHP
php一个找二层目录的小东东
2012/08/02 PHP
php函数指定默认值方法的小例子
2013/12/04 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
2017/02/28 PHP
利用jQuery的$.event.fix函数统一浏览器event事件处理
2009/12/21 Javascript
js 中{},[]中括号,大括号使用详解
2011/05/12 Javascript
jquery(live)中File input的change方法只起一次作用的解决办法
2011/10/21 Javascript
基于jQuery的360图片展示实现代码
2012/06/14 Javascript
js 自制滚动条的小例子
2013/03/16 Javascript
javascript动态添加样式(行内式/嵌入式/外链式等规则)
2013/06/24 Javascript
[将免费进行到底]在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
2014/08/18 Javascript
node.js中的fs.lstatSync方法使用说明
2014/12/16 Javascript
js实现iGoogleDivDrag模块拖动层拖动特效的方法
2015/03/04 Javascript
Javascript中数组方法汇总(推荐)
2015/04/01 Javascript
javascript中html字符串转化为jquery dom对象的方法
2015/08/27 Javascript
AngularJS控制器controller正确的通信的方法
2016/01/25 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
vue + axios get下载文件功能
2019/09/25 Javascript
vue中实现回车键登录功能
2020/02/19 Javascript
python利用正则表达式搜索单词示例代码
2017/09/24 Python
详解Python中where()函数的用法
2018/03/27 Python
详解利用python+opencv识别图片中的圆形(霍夫变换)
2019/07/01 Python
pip安装提示Twisted错误问题(Python3.6.4安装Twisted错误)
2020/05/09 Python
详解python中的lambda与sorted函数
2020/09/04 Python
函授教育个人学习的自我评价
2013/12/31 职场文书
社区优秀志愿者材料
2014/02/02 职场文书
就业自我评价
2014/02/04 职场文书
志愿者宣传口号
2014/06/17 职场文书
职工擅自离岗检讨书
2014/09/23 职场文书
2014年班干部工作总结
2014/11/25 职场文书
小王子读书笔记
2015/06/29 职场文书
导游词之塘栖古镇
2019/12/04 职场文书
Python编写冷笑话生成器
2022/04/20 Python