IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> vue屏幕分辨率适配实战解析 -> 正文阅读

[JavaScript知识库]vue屏幕分辨率适配实战解析

作为前端人员,为了适配各种型号的电脑、手机,我们往往离不开屏幕分辨率的适配;

那么如何做好屏幕分辩率的适配呢,我总结了以下几点:

1.使用amfe-flexible,将px转换为rem,用于适配不同宽度的屏幕

首先安装amfe-flexiblepostcss-px2rem依赖

npm install amfe-flexible -S
npm install postcss-px2rem -S

然后在main.js中引入

import "amfe-flexible/index.js";

最后在vue.config.js中进行配置

module.exports = {
    css: {
        loaderOptions: {
        plugins: [
          require("postcss-px2rem")({
            //这里75表示你的设计图的宽度为750px,如果你设计图的宽度为1920px,那么改为192即可。
            remUnit: 75 
          })
        ]
      }
        }
    }
}

通过控制看到px被转换为rem后则说明flexible生效了
在这里插入图片描述
其中有一个坑的地方:

<el-form ref="form" :model="form" label-width="80px">
  <el-form-item label="活动名称">
     <el-input v-model="form.name"></el-input>
  </el-form-item>
</el-form>

在这里插入图片描述

类似于label-width这种定义的样式,并不会被计算成rem,如果要想其也被计算成rem,可以通过样式穿透的方式修改其样式。

::v-deep(.el-form-item__label){
  width: 80px !important;
}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-K73pKlVH-1629036505011)(C:\Users\13166\AppData\Roaming\Typora\typora-user-images\image-20210812155710657.png)]

2.多用百分比,viewpoint 视口,flex布局,栅格布局等

利用宽度和高度的继承属性,通过百分比可以让页面视图成等比例放大和缩小;

利用视口的高度(vh)和宽度(vw)可以让页面的内容填满整个可视区域;

利用flex布局,栅格布局可以做到元素的居中显示,等比例分布等。

3.媒体查询

运用完以上两种方法后,基本上大部分的屏幕都可以被适配到,

如果有个别特殊页面或分辨率未适配到的,可以使用媒体查询进行特殊适配,例如:

//适配屏幕宽度在1400px以下的屏幕
@media screen and (max-width: 1400px) {
  width: 200px
}

4.如何验证

对于开发人员来说,找各种分辨率去一个个验证调试是很麻烦的一件事
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TXMD7zON-1629036505012)(C:\Users\13166\AppData\Roaming\Typora\typora-user-images\image-20210812165420040.png)]
以谷歌为例,可以点开控制台,点开移动端调试按钮,在顶部输入你要调试的分辨率即可选择你需要调整的分辨率了,

以上就是我进行屏幕分辨率的适配心得了,欢迎关注我的微信公众号与我沟通交流,我会及时回复哦!
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BqxHziDL-1629036505014)(D:\xiazai\qrcode_for_gh_a7655e903e2c_258.jpg)]

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-16 11:38:44  更:2021-08-16 11:40:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 9:57:29-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码