假如我的设计图是750的,我按照设计图去写我的页面,单位就是像素值。那么我可以假设1rem=75px
,通过这个比例去把页面中的px都改为rem.
那么实际代码运行的时候,浏览器的html的fontSize值是怎么确定的呢?
还有设计图是750的时候,它的html的fontSize又是多少呢?
假如我的设计图是750的,我按照设计图去写我的页面,单位就是像素值。那么我可以假设1rem=75px
,通过这个比例去把页面中的px都改为rem.
那么实际代码运行的时候,浏览器的html的fontSize值是怎么确定的呢?
还有设计图是750的时候,它的html的fontSize又是多少呢?
css 设置的啊,你给 html 或者 :root 设置多大的 font-size 那么 1 个 rem 就是多大,如果不设置浏览器有一份 user agent 的 stylesheet 会给一个默认值。
没明白么?你看下 em 怎么用:
p{font-size: 100px; line-height: 1.5em;}
p 的line-height是多少?150啊,em 是当前的 font-size。那 rem 是多少?一样的道理,只不过它永远都是取的 root 节点的 font-size 作为参考。
html { font-size: 100px;}
.foo {width: 3rem;}
请问 .foo 的宽度多少?300px啊,因为 1rem 等于当前 root 节点的 computed 的 font-size 大小啊。注意是 html 节点实际使用的 font-size 值,多处定义看 css rule 的权重。
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
什么是rem
设计稿px转rem
那不同的手机屏幕,怎么适配呢?
计算原理
就是获取屏幕宽度,除了设计稿的宽度,再*上初始字体大小即可