前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CSS3新单位——rem学习

CSS3新单位——rem学习

作者头像
饮水思源为名
发布2018-10-09 11:47:09
5190
发布2018-10-09 11:47:09
举报
文章被收录于专栏:Android小菜鸡Android小菜鸡

  近期,公司招了一个前端,看他的代码时,有特别多的rem作为单位。对于我这种H5小菜鸟来说,没有办法,又被强制学习了一波。    rem是css3中新增加的一个单位属性(font size of the root element),根据页面的根节点的字体大小进行转变的单位。而根节点就是<html>节点。

代码语言:javascript
复制
html{font-size:100px};
1rem=100px;

  如果没有对根节点的font-size复制,则rem使用默认值16px。即1rem=16px。   rem可以很好解决webApp不同屏幕的适配问题,只要动态改变font-size的值,就可以应对不同的屏幕分辨率。

代码语言:javascript
复制
html,body{ height: 100%; margin: 0; padding: 0; font-size: 14px;}//注意初始样式必须写在最顶部!!!!如果写在媒体查询底部的话就会覆盖上方的媒体查询(因为是层叠样式表嘛~)
@media screen and (max-width:320px ) {
    html{font-size: 12px;}
}
@media screen and (min-width:321px) and (max-width:750px ) {
    html{font-size: 14px;}
}
@media screen and (min-width:751px ) {
    html{font-size: 16px;}
}

  提供一个动态获取屏幕宽度并且为font-size赋值的方法。

代码语言:javascript
复制
let htmlwidth = document.documentElement.clientWidth || document.body.clientWidth;
let htmlDom = document.getElementsByTagName('html')[0];
htmlDom.style.fontSize = htmlwidth / 10 + 'px';
window.addEventListener('resize', (e) => {
  let htmlwidth = document.documentElement.clientWidth || document.body.clientWidth;
  let htmlDom = document.getElementsByTagName('html')[0];
  htmlDom.style.fontSize = htmlwidth / 10 + 'px';
})
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.09.11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档