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

CSS自适应分辨率 amfe-flexible 和 postcss-pxtorem:大屏高宽自适应问题

前言

继上篇《CSS自适应分辨率 amfe-flexible 和 postcss-pxtorem》。
发现一个有趣的问题,文件 rem.js 中按照宽度设置自适应,适用于大多数页面,但当遇到大屏就不那么合适了。

问题

使用宽度,注意代码第2 和 4 行:

    // 1920 默认大小16px; 1920px = 120rem ;每个元素px基础上/16const screenWidth = 1920const scale = screenWidth / 16const htmlWidth = document.documentElement.clientWidth || document.body.clientWidth// 得到html的Dom元素const htmlDom = document.getElementsByTagName('html')[0]// 设置根元素字体大小htmlDom.style.fontSize = htmlWidth / scale + 'px'

如下图,左右卡片的底部因内容较多而溢出。这是按照宽度设置的,html font-size 较大。

,
解决方案:注意差异也在代码第 2和 4 行,此时已改为按照高度计算:

    // 按高度来const screenHeight = 1080const scale = screenHeight / 16const htmlHeight = document.documentElement.clientHeight || document.body.clientHeight// 得到html的Dom元素const htmlDom = document.getElementsByTagName('html')[0]// 设置根元素字体大小htmlDom.style.fontSize = htmlHeight / scale + 'px'

在这里插入图片描述

总结

关键点就在最后的值 htmlDom.style.fontSize。它决定了rempx 的转换。需根据系统的设计来做相应处理。有时甲方需要在异屏(2880*1800)系统上展示,也可固定 htmlDom.style.fontSize 的值,如直接赋值为 16px

http://www.lryc.cn/news/264527.html

相关文章:

  • SQL面试题挑战01:打折日期交叉问题
  • 三大主流前端框架介绍及选型
  • 云原生消息流系统 Apache Pulsar 在腾讯云的大规模生产实践
  • 【LeetCode刷题】--245.最短单词距离III
  • 数字化时代的智能支持:亚马逊云科技轻量应用服务器技术领先
  • 【智慧之窗】AI驱动产品探索
  • BBS项目--登录
  • Python---TCP服务端程序开发
  • 回归预测 | MATLAB实现GWO-DHKELM基于灰狼算法优化深度混合核极限学习机的数据回归预测 (多指标,多图)
  • 听GPT 讲Rust源代码--src/tools(15)
  • python可以做小程序研发嘛,python能做微信小程序吗
  • 创建型模式 | 单例模式
  • 【无标题】欢迎使用Markdown编辑器
  • Postgresql中PL/pgSQL的游标、自定义函数、存储过程的使用
  • 【IDEA】Intellij IDEA相关配置
  • GD32移植STM32工程(因为懒,所以移植)
  • mt5和mt4交易软件有什么区别?
  • 零刻EQ12 N100 双2.5G网口 All In One新手教程
  • 竞赛保研 基于Django与深度学习的股票预测系统
  • 听GPT 讲Rust源代码--src/tools(16)
  • Leetcoed 双指针
  • 关于“Python”的核心知识点整理大全31
  • 第1章 SpringBoot开发入门
  • 利用prometheus+grafana进行Linux主机监控
  • 单词反转(字符串)
  • 【Java 集合】LinkedBlockingDeque
  • 【hacker送书第3期】OpenCV轻松入门:面向Python(第2版)
  • 手把手教你isPalindrome 方法在密码验证中的应用
  • drf入门规范(二)
  • 使用Redis和Nginx分别实现限制接口请求频率