当前位置: 首页 > news >正文

解决前端笔记本电脑屏幕显示缩放比例125%、150%对页面大小的影响问题

近期在工作中遇到一个问题,记录一下,在项目上线之后,遇到一个问题,即缩放到90%时,页面字体比默认的100%字体大,一开始毫无头绪,经过一番的Google...Google...Google....,终于找到了解决方法,这是因为大多数笔记本电脑默认的缩放比例为125%或者是150%,所以就出现了在本身台式电脑(默认100%)上开发出来的页面都是按照100%比例来开发的,之后在笔记本电脑上打开缩放比例的时候会出现字体大小显示不合理的问题,这种问题主要是因为device-pixel-ratio导致的
 原文链接:https://blog.csdn.net/m0_46318298/article/details/133786669

1.新建一个js文件

// detectZoom.js
export const detectZoom = () => {let ratio = 0const screen = window.screenconst ua = navigator.userAgent.toLowerCase()if (window.devicePixelRatio !== undefined) {ratio = window.devicePixelRatio} else if (~ua.indexOf('msie')) {if (screen.deviceXDPI && screen.logicalXDPI) {ratio = screen.deviceXDPI / screen.logicalXDPI}} else if (window.outerWidth !== undefined &&window.innerWidth !== undefined) {ratio = window.outerWidth / window.innerWidth}if (ratio) {ratio = Math.round(ratio * 100)}return ratio
}

2. 在入口文件main.js引入

import { detectZoom } from '@/utils/detectZoom';
// 处理笔记本系统默认系统比例为125%或150%带来的布局影响
const m = detectZoom();
document.body.style.zoom = 100 / Number(m);

相关文章:

  • Vite 项目中环境变量的配置和使用
  • 如何判断服务器的线路
  • 【通过虚拟现实:让我们对危险更敏感】
  • Win11 使用 WSL2 安装 linux 子系统 ubuntu
  • 虚幻引擎启动报错记录
  • 如何使用 React 构建跑马灯组件
  • 6种xinput1_3.dll丢失的解决办法,并探讨xinput1_3.dll丢失的原因及其属性。
  • Harmony鸿蒙南向驱动开发-MIPI DSI
  • HTTP与HTTPS:深度解析两种网络协议的工作原理、安全机制、性能影响与现代Web应用中的重要角色
  • Spring Boot 整合 Apache Phoenix 进行 HBase 数据操作指南
  • Prime (2021): 2
  • 黑白图像彩色化
  • PCB学习记录---原理图
  • Vue3:对ref、reactive的一个性能优化API
  • 程序员开发指南-- reference
  • SegmentFault for Android 3.0 发布
  • [iOS]Core Data浅析一 -- 启用Core Data
  • 2017-08-04 前端日报
  • 30天自制操作系统-2
  • 5、React组件事件详解
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • Angular2开发踩坑系列-生产环境编译
  • Docker: 容器互访的三种方式
  • linux学习笔记
  • MYSQL 的 IF 函数
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • python_bomb----数据类型总结
  • Redis 中的布隆过滤器
  • spring + angular 实现导出excel
  • vue的全局变量和全局拦截请求器
  • 不上全站https的网站你们就等着被恶心死吧
  • 读懂package.json -- 依赖管理
  • 规范化安全开发 KOA 手脚架
  • 猴子数据域名防封接口降低小说被封的风险
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 模型微调
  • 日剧·日综资源集合(建议收藏)
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 正则与JS中的正则
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • # 睡眠3秒_床上这样睡觉的人,睡眠质量多半不好
  • #mysql 8.0 踩坑日记
  • (173)FPGA约束:单周期时序分析或默认时序分析
  • (26)4.7 字符函数和字符串函数
  • (4)Elastix图像配准:3D图像
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (二)斐波那契Fabonacci函数
  • (简单) HDU 2612 Find a way,BFS。
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • (转)为C# Windows服务添加安装程序
  • .Net 路由处理厉害了
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • .NET/C# 使窗口永不获得焦点
  • .net开发时的诡异问题,button的onclick事件无效