前端rem单位的使用研究

分析网易新闻手机web端,http://3g.163.com/,发现里面大量使用了rem这个单位进行计算大小。

针对rem这个单位有如下解析:

px:像素是相对于显示器屏幕分辨率而言的相对长度单位。pc端使用px倒也无所谓,可是在移动端,因为手机分辨率种类颇多,不可能一个个去适配,这时px就显得非常无力,所以就要考虑em和rem。

em:继承父级的,假设html的font-size默认为16px,body字体大小定义为50%,那么在body里字体大小就是1em=8px了。可当你又定义了一个div,然后把字体设置成了50%,请问,现在div下的1em等于多少?因为继承了父级的值,现在这个div里的1em=4px,这么嵌套下去的话,抱歉,我数学不好!所有rem就出现了。

rem:是em的升级版,rem只会相对html的值,不会受到父级的影响,这样的好处在于:从em里的例子来讲,1rem始终会等于8px。使用的时候不需要重新计算rem此时的大小。rem因为是css3增加的,所以ie8或以下请无视。

参考:http://www.uizph.com/post-329.html?utm_source=tuicool&utm_medium=referral

时间: 2024-11-06 15:57:02

前端rem单位的使用研究的相关文章

移动端rem单位用法[转]

标签: 1.rem(font size of the root element)是指相对于根元素的字体大小的单位,em(font size of the element)是指相对于父元素的字体大小的单位.它们之间其实很相似,只不过一个计算的规则是依赖根元素一个是依赖父元素计算.二者都是相对单位 2.我们现在在切页面布局的使用常用的单位是px,这是一个绝对单位,web app的屏幕适配有很多中做法, 例如:流式布局.限死宽度,还有就是通过响应式来做,但是这些方案都不是最佳的解决方法, 例如流式布局

如何在手机项目中使用rem单位

rem这是个低调的css单位,近一两年开始崭露头角,有许多同学对rem的评价不一,有的在尝试使用,有的在使用过程中遇到坑就弃用了.但是我对rem综合评价是用来做web app它绝对是最合适的人选之一. rem是什么? rem(font size of the root element)是指相对于根元素的字体大小的单位.简单的说它就是一个相对单位.看到rem大家一定会想起em单位,em(font size of the element)是指相对于父元素的字体大小的单位.它们之间其实很相似,只不过一

移动端rem单位用法

1.rem(font size of the root element)是指相对于根元素的字体大小的单位,em(font size of the element)是指相对于父元素的字体大小的单位.它们之间其实很相似,只不过一个计算的规则是依赖根元素一个是依赖父元素计算.二者都是相对单位 2.我们现在在切页面布局的使用常用的单位是px,这是一个绝对单位,web app的屏幕适配有很多中做法,例如:流式布局.限死宽度,还有就是通过响应式来做,但是这些方案都不是最佳的解决方法, 例如流式布局的解决方案

关于使用rem单位,calc()进行自适应布局

关于css中的单位 大家都知道在css中的单位,一般都包括有px,%,em等单位,另外css3新增加一个单位rem. 其中px,%等单位平时在传统布局当中使用的比较频繁,大家也比较熟悉,不过px单位在进行自适应布局的过程当中则会有些力不从心,大部分的解决方案是使用%为单位配合@media媒介查询来进行自适应布局.不过还有另外一个css3新添加的单位也同样可以拿来进行自适应布局,在我看来这种方法也更加方便直观. em和rem 首先先介绍一下em,这个单位是根据其父元素的字体大小来进行计算的,即1e

写一个Sublime Text 2插件(CSS文件里px单位替换成rem单位)

三年前我就知道了sublime text 不过那时候用DW还是很爽的样子,后来有天想为难自己了,于是用了两年的vim和五笔,最近又觉得这么好编辑器也可以试试,改变一下自己,用一下的,不过由于工作的原因,没有坚持下来,有时候顺手似乎比先进更重要一些. 最近工作都是做一些移动端的页面,而微信的长按出现二维码有个bug,在ios里缩放的页面长按是不会出现"识别二维码"的.所以需要转换一下,不要让页面缩放,要自适应,这个时候就用rem单位来做的会比较好一些,而我的同事之前开发了一个px to

gulp.spritesmith修改px为rem单位

移动端开发中,使用gulp.spritesmith进行小图sprite并生成样式,但由于spritesmith默认是以px为单位,所以就把插件的内容修改了下让生成rem单位并且能把background-size设置为雪碧图的宽高. 1.首先修改gulp.spritesmith\node_modules\spritesheet-templates\lib\spritesheet-templates.js ['x', 'y', 'offset_x', 'offset_y', 'height', 'w

使用rem单位时css sprites的坑

在使用rem单位时,用雪碧图(我不喜欢这个名字!)做背景图片在移动端有时会有错位.pc模拟是没有问题的,而且错位的情况不同的手机还不太一样.这里说几个解决的办法.出现这个问题的原因我找了很久都找不到,再接着找吧! background-size和background-position都用rem 我实际使用中是用这个方法解决问题的.但是据说这样还是会有错位的时候. 转换为px 这个是一定有效的方法.background-size 和 position都用px写死.然后动态增加.zoom{trans

sass中px转rem单位

/*↓↓↓↓↓ @function实现px转化rem单位 推荐使用这种方法 ↓↓↓↓↓↓↓↓*/$browser-default-font-size: 16px !default;//变量的值可以根据自己需求定义html {font-size: $browser-default-font-size;}@function pxTorem($px){//$px为需要转换的字号 @return $px / $browser-default-font-size * 1rem;} .header { fo

关于使用rem单位、css函数calc()进行自适应布局

一.关于css中的单位 大家都知道在css中的单位,一般都包括有px,%,em等单位,另外css3新增加一个单位rem. 其中px,%等单位平时在传统布局当中使用的比较频繁,大家也比较熟悉,不过px单位在进行自适应布局的过程当中则会有些力不从心,大部分的解决方案是使用%为单位配合@media媒介查询来进行自适应布局. 不过还有另外一个css3新添加的单位也同样可以拿来进行自适应布局,在我看来这种方法也更加方便直观. 1.em和rem 首先先介绍一下em,这个单位是根据其父元素的字体大小来进行计算