设为首页收藏本站
天天打卡

 找回密码
 立即注册
搜索
查看: 82|回复: 11

移动 web 端屏幕适配(rem)

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 打卡月天数:0
  • 打卡总奖励:58
  • 最近打卡:2024-05-18 00:02:24

2

主题

108

回帖

438

积分

等待验证会员

积分
438
发表于 2024-4-20 10:32:14 | 显示全部楼层 |阅读模式
前言
最近整理了一下以前学习前端的笔记,发现自己对移动 web 端屏幕适配(rem)这一块并没有真正理解,只是会用。
接下来,把自己的一些对移动 web 端屏幕适配(rem)的思考记录下来。
rem 介绍
rem 表示根元素(<html>)的 font-size 的大小。即如果根元素的 font-size 大小为 14px,则 1rem = 14px
rem 适配移动 web 端

适配效果
在不同尺寸的屏幕下,同一个元素的大小看起来不是一样大的,但是它们所占屏幕宽度的比例是一样的。
代码
  1. // 在 html 文件的 head 标签中
  2. <script type="text/javascript">
  3.   (function(){
  4.     var html = document.documentElement;
  5.     // 获取屏幕宽度(px)
  6.     var hWidth = html.getBoundingClientRect().width;
  7.     // 设置 html 标签的 font-size 大小为 hWidth/15
  8.     html.style.fontSize = hWidth/15 + 'px';
  9.   })()
  10. </script>
复制代码
  1. // 在 less 中
  2. /* 定义变量@r:750/15 */
  3. @r:50rem;
  4. div {
  5.   width: 100/@r;
  6.   height: 200/@r;
  7. }
复制代码
javascript 代码
首先,我们将屏幕的 1/15 大小(px)复制给 html 标签的 font-size 属性。此时,在任何尺寸的屏幕上,屏幕尺寸(px)的 1/15 px 都等于 1rem 的大小。即:在任何尺寸的屏幕上,只要给元素设置值相同的 rem,则在所有尺寸的屏幕上该元素所占屏幕宽度的比例是一样的,所占比例一样,就适配了所有尺寸的屏幕。
less 代码
现在只需要将设计稿中元素的 px 单位转换为 rem 单位。
所以,这个时候,我们可以把设计稿也当成一个具有一定尺寸的手机屏幕。
在我这个例子中,设计稿的宽度为 750px。
所以,750/15 = 50px,即在设计稿这样尺寸的手机屏幕中,1rem = 50px。
然后,在 less 代码中,我们定义一个变量 @r。
量得 div 的宽度为 100px,因为在设计稿这样尺寸的屏幕中,1rem = 50px,所以该 div 的 rem 的值为:100/50 rem,即 100/@r。
量得 div 的高度为 200px,因为在设计稿这样尺寸的屏幕中,1rem = 50px,所以该 div 的 rem 的值为:200/50 rem,即 200/@r。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

1

主题

62

回帖

145

积分

注册会员

积分
145
发表于 2024-4-23 08:14:33 | 显示全部楼层
谢谢你的提醒,我会注意的。

1

主题

57

回帖

137

积分

注册会员

积分
137
发表于 2024-4-27 15:52:43 | 显示全部楼层
已测试,非常不错
  • 打卡等级:无名新人
  • 打卡总天数:2
  • 打卡月天数:0
  • 打卡总奖励:37
  • 最近打卡:2024-08-26 11:29:38

2

主题

51

回帖

184

积分

注册会员

积分
184
发表于 2024-4-28 00:41:44 | 显示全部楼层
你的信息来源是?我想了解更多。

0

主题

60

回帖

120

积分

注册会员

积分
120
发表于 2024-5-17 18:13:49 | 显示全部楼层
牛逼

0

主题

51

回帖

103

积分

注册会员

积分
103
发表于 2024-6-9 07:08:20 | 显示全部楼层
顶一个,观点非常中肯!

0

主题

55

回帖

111

积分

注册会员

积分
111
发表于 2024-7-21 23:10:19 | 显示全部楼层
好用好用

0

主题

37

回帖

75

积分

注册会员

积分
75
发表于 2024-8-30 22:39:35 | 显示全部楼层
你的信息来源是?我想了解更多。

1

主题

55

回帖

133

积分

注册会员

积分
133
发表于 2024-10-6 10:10:40 | 显示全部楼层
我不确定这个信息的准确性,请再确认一下

3

主题

61

回帖

188

积分

注册会员

积分
188
发表于 2024-11-15 18:44:24 | 显示全部楼层
让我们一起努力
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|爱云论坛 - d.taiji888.cn - 技术学习 免费资源分享 ( 蜀ICP备2022010826号 )|天天打卡

GMT+8, 2024-11-24 11:24 , Processed in 0.114390 second(s), 26 queries .

Powered by i云网络 Licensed

© 2023-2028 正版授权

快速回复 返回顶部 返回列表