`

em(倍)与px的区别

 
阅读更多

在国内网站中,包括三大门户,以及“引领”中国网站设计潮流的蓝色理想,ChinaUI等都是使用了px作为字体单位。只有百度好歹做了个可调的表率。而 在大洋彼岸,几乎所有的主流站点都使用em作为字体单位,也就是可调的。没错,px比em更加容易使用,大部分读者不知道em为何物或者它相当于多少 px。国外人士如此重视网站易用性(Accessibility),不仅因为其根生蒂固的人文精神,直接原因可能是因 为有一部法律来约束他们—例如美国的Section 508,强制网站达到一定的易用性。

      关键点

  1. IE无法调整那些使用px作为单位的字体大小;
  2. 国外的大部分网站能够调整的原因在于其使用了em作为字体单位;
  3. Firefox能够调整px和em,但是96%以上的中国网民使用IE浏览器(或内核)。
  px像素(Pixel)。相对长度单位。像素px是相对于显示器屏幕分辨率而言的。
  em是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。
  任意浏览器的默认字体高都是16px。所有未经调整的浏览器都符合: 1em=16px。那么12px=0.75em,10px=0.625em。为了简化font-size的换算,需要在css中的body选择器中声明 Font-size=62.5%,这就使em值变为 16px*62.5%=10px, 这样12px=1.2em, 10px=1em, 也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了。
  em有如下特点:
  1. em的值并不是固定的;
  2. em会继承父级元素的字体大小。
  所以我们在写CSS的时候,需要注意两点:
  1. body选择器中声明Font-size=62.5%;
  2. 将你的原来的px数值除以10,然后换上em作为单位;
  3. 重新计算那些被放大的字体的em数值。避免字体大小的重复声明。
  也就是避免1.2 * 1.2= 1.44的现象。比如说你在#content中声明了字体大小为1.2em,那么在声明p的字体大小时就只能是1em,而不是1.2em, 因为此em非彼em,它因继承#content的字体高而变为了1em=12px。
  但是12px汉字例外,就是由以上方法得到的12px(1.2em)大小的汉字在IE中并不等于直接用12px定义的字体大小,而是稍大一点。这个问 题 Jorux已经解决,只需在body选择器中把62.5%换成63%就能正常显示了。原因可能是IE处理汉字时,对于浮点的取值精确度有限。不知道有没有 其他的解释。

分享到:
评论

相关推荐

    CSS 中px、em、rem、%、vw、vh单位之间的区别详解

    字体大小同样都是1.5em,但是效果却截然不同,按照W3C提供的公式,我们可以计算下: class为id1的div字体大小继承自父元素body:16px*1.5em = 24px class为id2的div字体大小继承自父元素id1:24px*1.5em = 36px ...

    css中单位px和em的区别

    css中单位px和em的区别

    em是何物 em与px的介绍及换算方法

    em指字体高,任意浏览器的默认字体高都是16px,所以未经调整的浏览器都符合: 1em=16px,详细了解请参考本

    学习CSS了解单位em和px的区别

    我一直也搞不清楚px与em之间的关系和特点,看过以后确实收获很大。平时都是用px来定义字体,所以无法用浏览器字体放大的功能,而国外大多数网站都可以在IE下使用。因为 1. IE无法调整那些使用px作为单位的字体大小;...

    知识普及:彻底搞懂CSS中单位px和em,rem的区别

    国内的设计师大都喜欢用px,而国外的网站大都喜欢用em和rem,那么三者有什么区别,又各自有什么优劣呢?下面给大家详细介绍下。 PX特点 1. IE无法调整那些使用px作为单位的字体大小; 2. 国外的大部分网站能够调整的...

    浅析rem和em和px vh vw和% 移动端长度单位

    首先来说说em和px的关系 em是指字体高度 浏览器默认1em=16px,所以0.75em=12px;我们经常会在页面上看到根元素写的font-size:65%; 这样em就成了16px*62.5=10em;这是显示在页面的字体大小是10px; 这样12px=1.2em,10px=1...

    css中em px 区别你真的了解吗

    之前听人说过,网站制作中字体单位应该用em而不用px,原因简单来说就是支持IE6下的字体缩放,在页面中按ctrl+滚轮,字体以px为单位的网站没有反应。px是绝对单位,不支持IE的缩放,em是相对单位。 首先了解一下em是...

    CSS中px em rem区别与使用

    最近在学习字体时遇到字体大小的设置,font-size单位可以是px或em或rem,那么这几种单位都有什么区别呢,该如何使用呢? px是像素图像的基本采样单位,相对于显示器屏幕分辨率而已的,什么是一个像素呢,你把一张图...

    px、em、rem区别1

    为了简化font-size的换算,需要在css中的body选择器中声明Font-size=62.5%,这就使em值变为 16px*62.5%=10px, 这样1

    CSS的em、px、pt长度单位转换示例

    1em=16px 1em=12pt 1px=1/16 em=0.0625em 1px=3/4 pt=0.75pt 1pt=1/12 em≈0.0833em 1pt=4/3 px≈1.3333px em、px、pt的转换工具如下,结果如无法除尽,小数点后面四舍五入到4位,我用“约等于”表示;如果可以除尽...

    px-em:在EM中转换PX的模块

    px-em 在EM中转换PX的模块。 安装 $ [sudo] npm install --save px-em 用法 var pxEm = require ( 'px-em' ) ; pxEm ( 16 , 24 , true ) . then ( function ( em ) { console . log ( em ) ; // 0.667em } ) . ...

    css中px、em和rem的区别总结

    相信每位前端工程师们都有这么一个体会,国内的设计师大都喜欢用px,而国外的网站大都喜欢用em和rem,那么三者有什么区别,又各自有什么优劣呢?下面这篇文章小编就来给大家详细介绍关于css中px、em和rem的区别,...

    CSS中单位px与em的区别(推荐)

    主要介绍了CSS中单位px与em的区别 的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下

    PX4-Autopilot.zip

    git clone https://github.com/PX4/PX4-Autopilot.git --recursive 由于外网原因克隆PX4源码不完整(各子项目库下载不齐全)的可下载此PX4源码完整版

    em-px:在PX中转换EM的模块

    em-px 在PX中转换EM的模块。 安装 $ [sudo] npm install --save em-px 用法 var emPx = require ( 'em-px' ) ; emPx ( 0.667 , 24 , true ) . then ( function ( px ) { console . log ( px ) ; // 16px } ) . ...

    CSS3 px 和 em 和 rem

    NULL 博文链接:https://onestopweb.iteye.com/blog/2318759

    CSS Font-Size: em、px 、pt 、Percent之间的关系及换算

    1、“Ems”: em,大小不固定 ,成为相对单位(body则相对浏览器的默认字体设置,子集相对父级), 浏览器默认设置字体大小为16px , 则1em = 16px , 且其可扩展,2em = 32px , 目前常用的字体大小px换算成em , 16px =...

    Wincc通过EM277与200CPU连接

    西门子Wincc通过EM277与S7-200CPU连接

Global site tag (gtag.js) - Google Analytics