px和rem换算
px(pixel)和rem(root em)都是用于测量长度的单位,但是它们有不同的换算关系。px是绝对单位,1px = 1/96寸。在不同设备上,1px对应不同的物理尺寸,所以不适合用于响应式布局。rem是相对单位,它是相对于根元素<html>的字体大小来计算的。
所以,如果html的font–size是16px,则1rem = 16px。
如果html的font–size是20px,则1rem = 20px。所以,px和rem的换算关系公式为:px = rem × font–size of <html> 例如:
– 如果html的font–size是16px
– 设定元素width: 10rem
– 那么这个元素的px宽度就是:10rem * 16px = 160px在实际开发中,我们通常会给<html>元素设置不同的font–size,以适配不同屏幕:- 在大屏幕上,给<html>设置较大的font–size,例如20px,那么1rem = 20px
– 在小屏幕上,给<html>设置较小的font–size,例如10px,那么1rem = 10px这样,我们在设计稿上量取的rem单位,可以在不同屏幕上显示不同的px值,达到响应式效果。推荐的<html>字号设置方式有:1. 媒体查询设置:
css html { font-size: 16px; /* 默认16px */ } @media (min-width: 768px) { html { font-size: 20px; } }
css html { font-size: 5vw; /* 视口宽度的5% */ }
3. 使用javascript动态设置:
js function setFontSize() { var winWidth = document.documentElement.clientWidth; if (winWidth >= 1920) { document.documentElement.style.fontSize = '100px'; } else if (winWidth >= 1600) { document.documentElement.style.fontSize = '90px'; } else if (winWidth >= 1366) { document.documentElement.style.fontSize = '80px'; } else { document.documentElement.style.fontSize = '16px'; } }
px和rpx换算
px(pixel)和rpx(responsive pixel)也都是用于度量长度的单位,但是它们有不同的换算关系。px是绝对单位,1px = 1/96寸。在不同设备上,1px对应不同的物理尺寸,所以不适合用于响应式布局。rpx是相对单位,它是相对于屏幕宽度来计算的。在iPhone 6上,屏幕宽度为750px,所以750rpx = 1px。
在iPhone X上,屏幕宽度为1125px,所以1125rpx = 1px。所以,px和rpx的换算关系为:rpx = px × (设备宽度 / 标准宽度)标准宽度一般为750px。例如:
– 在iPhone 6上(屏幕宽度750px):
– 设定元素width: 150rpx
– 那么这个元素的px宽度就是:150rpx * 750px / 750 = 150px- 在iPhone X上(屏幕宽度1125px):
– 设定元素width: 150rpx
– 那么这个元素的px宽度就是:150rpx * 1125px / 750 = 225px可以看出,在不同屏幕宽度的设备上,rpx对应的px值会不同,这就是rpx实现响应式的原理。在小程序开发中,我们通常会根据标准宽度750px来设计UI,然后使用rpx作为单位。在不同设备上,rpx会自动转换为对应的px值,实现响应式布局。
原文地址:https://blog.csdn.net/ceike/article/details/130656625
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_23794.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!