JavaScript学习笔记——rem布局

rem

rem:

r代表root,rm相对单位,相当于HTML的字体大小单位,可以用于任何设定长度的单位

举例:

  • 设计师设计网站的设计稿:1000px
  • 每个人打开网页的时候设备不同,分辨率不同,需要在不同的分辨率下适应大小
  • 屏幕大小,1000px,如果设置 1 rem = 100px,10 rem刚好占满整个屏幕宽度
  • 屏幕大小,500px,如果设置 1 rem = 50px,10 rem刚好占满整个屏幕宽度
<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            #d1{
                width: 5rem;
                height: 5rem;
                background-color: aqua;
                font-size: 1rem;
            }
        </style>
	</head>
	<body>
        <div id="d1">
            helloworld
        </div>
		<script>
			window.onresize = function () {
                setRem();
            };

			function setRem() {
				var screenWidth = window.innerWidth;
				var danwei = screenWidth / 10;
				//屏幕宽度/设计稿占满全屏的宽度是多少rem
				//如果设计稿是750,就可以除以7.5,保证1 rem = 100px,方便计算 
				var html = document.querySelector("html");
				html.style.fontSize = danwei + "px";
            }
            
            setRem();
		</script>
	</body>
</html>

输出后10rem为整个屏幕宽度

且div和内部文字随着窗口大小变化而变化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值