em与当前元素的不解之缘
em是相对于当前元素的字体大小而言,比如font-size:14px;那么这个元素的1em=14px.
如果当前元素未定义字体大小,则会向上继承父元素的字体大小,如果当前元素的所有祖先元素都没有定义font-size属性值,该元素就会继承浏览器默认样式.
所有浏览器的默认字体大小都是16px.
这样,1em=16px,0.75em=16px*0.75=12px
可是这么计算有点麻烦啊?好办,我们通常在样式中会声明这么一句body{font-size:62.5%}
即设置默认字体大小16px*62.5%=10px;
这样一来,1em=10px,0.75em=7.5px,是不是方便了一些呢?
再来个例子
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">
*{padding:0;margin:0;}
html{font-size:62.5%;}
p{display:inline-block;border:1px solid silver;}
/*使用px作为单位*/
#p1
{
font-size:15px;
width:150px;
height:75px;
text-indent:30px;
}
/*使用em作为单位*/
#p2
{
font-size:1.5em;
width:10em;
height:5em;
text-indent:2em;
}
</style>
</head>
<body>
<p id="p1">两个段落的文字呈现相同的样式</p><br />
<p id="p2">两个段落的文字呈现相同的样式</p>
</body>
</html>
结果是两个段落的文字呈现相同的样式.
可能有人会问,p2的width不应该是15em吗?height不应该是7.5em吗?text-indent不应该是3em吗?
可是别忘了em的定义啊,是相对于当前元素的字体大小而言的,p2的字体大小被设置成了1.5em=15px;
那么对这个元素而言,1em就是15px了,所以width=150px/15px=10em;height,text-indent依此类推;
这就是统一单位为em时需要注意的.
em与当前元素的不解之缘的更多相关文章
- CSS中强悍的相对单位之em(em-and-elastic-layouts)学习小记
使用相对单位em注意点 1.浏览器默认字体是16px,即1em = 16px,根元素设置如下 html{ font-size: 100%; /* WinIE text resize correctio ...
- css单位:em,rem解释
em:所有浏览器都符合:1em=16px;1.具有继承性2.em的根元素是body,当设置了根元素的大小时,大小是定义的数字乘以根元素定义的大小值 rem:1rem=16pxrem不具有继承性,其根元 ...
- rem、em、px的区别
px 像素(Pixel).相对长度单位.像素px是相对于显示器屏幕分辨率而言的. 特点: 1. IE无法调整那些使用px作为单位的字体大小: 2. 国外的大部分网站能够调整的原因在于其使用了em或re ...
- CSS3中的弹性布局——"em"的用法
使用CSS也好久了,但一直都是在使用“px”来设置Web元素的相关属性,未敢使用“em”.主要原因是,对其并不什么了解,只知道一点概念性的东西,前段时间在项目中要求使用“em”作为单位设置元素,所以从 ...
- JQuery_DOM 简介/设置元素及内容
一.DOM 简介 1.D 表示的是页面文档Document.O 表示对象,即一组含有独立特性的数据集合.M表示模型,即页面上的元素节点和文本节点. 2.DOM 有三种形式,标准DOM.HTML DOM ...
- CSS中强大的EM
(转)作者:dearjohn ,发布于2012-7-31 http://www.uml.org.cn/html/201207311.asp 使用CSS也好久了,但一直都是在使用“px”来设置Web元素 ...
- EM css
原文地址http://www.uml.org.cn/html/201207311.asp CSS中强大的EM 作者:dearjohn ,发布于2012-7-31, ...
- jQuery mobile 前台设计中的css em的使用。
先贴个网址:http://www.uml.org.cn/html/201207311.asp 大家可以参考一下面这张转换表(body字体为16px时的值) 总结 长篇介绍了一大堆,唯一想告诉大家的是以 ...
- 何时使用 Em 与 Rem
原文 http://www.w3cplus.com/css/when-to-use-em-vs-rem.html 你可能已经很熟练使用这两个灵活的单位,但你可能不完全了解何时使用rem,何时使用 ...
随机推荐
- Cookie && Session && Token
Cookies Cookie的由来: HTTP 本身是一个无状态的 request/response 协议. server接收一个来自client的request, 处理完以后返回一个response ...
- LeetCode OJ 之 Valid Anagram
题目: Given two strings s and t, write a function to determine if t is an anagram of s. For example, s ...
- 严格符合CommonJS规范的包特性
严格符合CommonJS规范的包应该具备下面特性: 1.package.json必须在包的顶层文件夹下. 2.二进制文件应该在bin文件夹下. 3.JavaScript代码应该在lib文件夹下. 4. ...
- 2017全面JAVA面试经历总结
https://wenku.baidu.com/view/05e8f71afbd6195f312b3169a45177232f60e474.html?from=search JAVA常见面试题及解答2 ...
- 牛逼的postman,分类管理更好用
- P1052 过河(状态压缩)
P1052 过河(状态压缩) 题目描述 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把 ...
- nested exception is java.lang.NoClassDefFoundError: net/sf/cglib/proxy/CallbackFilter
转自:https://blog.csdn.net/licheng989/article/details/28929411 在Bean中有代码 public abstract Axe getAxe(); ...
- PCB MongoDB 数据库 Collection集合导出与导入
由于一直以来用微软可视化图形界面习惯了,而MongoDB是命令式操作,而用系统自带CMD操作不方便, 这里介绍一款CMD的替代品,大小100多M. Cmder工具下载 https://github. ...
- php的self和this
<?phpclass ss{ public static $code; public function __construct( $code ) { self::$code=$code; //这 ...
- System.Net.Mail 详细讲解
http://blog.csdn.net/liyanwwww/article/details/5507498