首页 > 其他分享 >Vue2实现部分页面使用rem布局

Vue2实现部分页面使用rem布局

时间:2023-04-27 18:23:59浏览次数:43  
标签:1920 setRem html Vue2 rem document 页面

1.计算rem值的比例,这里是1920的设计图;

setRem(){
/**
* @file: index.vue
* @method: setRemPc
* @param:
* @return:
* @description:计算rem大小
* @date:
*/
var whdef = 100/1920;// 表示1920的设计图,使用100PX的默认值
var bodyWidth = document.body.clientWidth;// 当前窗口的宽度
var rem = bodyWidth * whdef;// 以默认比例值乘以当前窗口宽度,得到该宽度下的相应FONT-SIZE值
document.getElementsByTagName('html')[0].style.fontSize = rem + 'px';
},

2.初始化的时候在created里面调用setRem()这个方法同时浏览器窗口大小改变时调用setRem();

this.$nextTick(()=>{
this.setRemPc();
window.addEventListener('resize', this.setRemPc);//浏览器窗口大小改变时调用rem换算方法
})

3.在离开页面时需要将html标签的font-size改为'unset',不然会影响的其他没用rem布局的页面,因为初始化的时候通过

document.getElementsByTagName('html')[0].style.fontSize = rem + 'px';将html标签的font-size给修改了;

destroyed() {
document.getElementsByTagName('html')[0].style.fontSize = 'unset';
},

标签:1920,setRem,html,Vue2,rem,document,页面
From: https://www.cnblogs.com/zDefind/p/17359890.html

相关文章

  • Incorrect credentials:401 Unauthorized, Please remove invalid credentials manual
    https://blog.csdn.net/qq_32486163/article/details/109826697?utm_medium=distribute.pc_relevant.none-task-blog-title-7&spm=1001.2101.3001.4242  ......
  • Python MatplotlibDeprecationWarning Matplotlib 3.6 and will be removed two minor
    在Pycharm中使用Matplotlib中的pyplot时,运行代码报错:MatplotlibDeprecationWarning:SupportforFigureCanvaseswithoutarequired_interactive_frameworkattributewasdeprecatedinMatplotlib3.6andwillberemovedtwominorreleaseslater.解决方法File->Set......
  • vue2实现饼图Pie组件封装
    实现如下效果: 如果不会请移步到官网的栗子,请点击查看直接给大家上代码:整体代码片段1<template>2<divref="echarts"style="width:100%;height:300px;"></div>3</template>4<script>5/*eslint-disable*/6import{setPieOpt......
  • java 后台给前台传值,html:select,html:text等加载页面显示默认值的方法
    后台写request.setAttribute("dateCreated","黑色头发");前台接收:html:text<html:textproperty="dateCreated"value="${dateCreated}"/>html:select<html:selectproperty="accountsUser"va......
  • vue2 input防抖功能
    1.在el-input绑定@input事件 2.在data中定义timer为null 3.在methods中定义@input绑定的方法 4.在setTimeout中调用对应处理的方法<el-inputstyle="width:140px;color:#FF8900"size="small"v-model="singleDiscountForm.discount"@input="inputDis......
  • pinia vue3 ts 切换到其他页面后再切回来数据不见了
    piniavue3ts切换到其他页面后再切回来数据不见了刷新有数据,但是切换到其他页面后再切回来数据不见了,我需要切回来后数据还有。因为我的数据是刷新的话就会watch监视数据有没有改变,但是切换其他页面不会触发我应该把得到的数据存储到store里面这样切换其他页面也不会消失......
  • Kivy页面布局中自定义组件位置的方法,可以通过指定组件的位置、尺寸和边距等属性来实现
    Python实现fromkivy.appimportAppfromkivy.uix.gridlayoutimportGridLayoutfromkivy.uix.buttonimportButtonclassMyGridLayout(GridLayout):  def__init__(self,**kwargs):    super(MyGridLayout,self).__init__(**kwargs)    self.cols=1......
  • 【解决方法】正常游览Flash页面,解决主流游览器的不支持问题(如Edge,Firefox)
    环境:工具:Firefox84版本或者360游览器-某特殊版本系统版本:Windows10问题描述:描述:进入某需要Flash插件的管理网站,使用edge等最新主流游览器均无法调用Flash,开启IE模式也没有做用,网上的其他教程也因为时效性已经无法生效。问题解释:解释:各大主流游览器在2020年基本都......
  • 安装多个NodeJS windows上安装多个Nodejs版本 解决vue2/vue3同时运行
    第一步下载nvm-windowsnvm-windows下载地址:Github最新下载地址进入之后直接下载第二步安装NVM注意路径一定不要包含空格中文否则会报错注意安装路径一定不要包含空格中文否则会报错 点击安装之后如果之前安装了nodejs的话会提示希望nvm管理已安装node版本吗点击是......
  • vue2与vue3的区别
    一.vue2和vue3双向数据绑定原理发生了改变vue2的双向数据绑定是利用ES5的一个APIObject.definePropert()对数据进行劫持结合发布订阅模式的方式来实现的。vue3中使用了es6的ProxyAPI对数据代理。相比于vue2.x,使用proxy的优势如下defineProperty只能监听某个属性,不......