我已经阅读了很多关于这个主题的文章(并且搜索了Q & A),并且我发现了,但我仍然不明白em单位和百分比之间的区别是什么。帮帮我?em单位和百分数有什么区别?
P.S. 我已经看到了这个代码示例:
p { font-size: 10px; }
p { line-height: 120%; } /* 120% of 'font-size' */
那是什么意思?为什么人人都想将行高设置为字体大小的百分比值?
我已经阅读了很多关于这个主题的文章(并且搜索了Q & A),并且我发现了,但我仍然不明白em单位和百分比之间的区别是什么。帮帮我?em单位和百分数有什么区别?
P.S. 我已经看到了这个代码示例:
p { font-size: 10px; }
p { line-height: 120%; } /* 120% of 'font-size' */
那是什么意思?为什么人人都想将行高设置为字体大小的百分比值?
好的,所以我决定总结答案。
谢谢你,伙计们。 :)
行高通常是字体大小的倍数。事实上,这是对你没有指定一个单元中唯一的值:
p { line-height: 1.2; } /* = 1.2em = 1.2*font-size = 120% of font-size */
如果行高是成比例的字体大小,更容易调整字体,而不必担心关于固定的线路高度。
1em = 100%,2em = 200%,1,4em = 140%等等。但是,它实际上是依赖于特定的。 我认为ems更“移动友好”,但这取决于开发者。
在CSS中使用百分比值,因为用户可以有不同的屏幕分辨率。例如,当您不想在您的js生成的内容中使用空格时。 1em表示“equeal为实际字体大小”,2“表示ems适合用户设置。
因此,当父标签的字体大小被声明为“小”,“中”或“大”时,它会发生一些变化,因为这些值受浏览器设置的影响。在此背景下1EM = \ = 100%,1EM似乎使设置多一点“小”或超过100%,更有点“大”,在这里读到它:
http://kyleschaeffer.com/user-experience/css-font-size-em-vs-px-vs-pt-vs/
可能有性能差异,但这取决于浏览器。
这正是我一直在寻找的答案。你告诉我,除了动态支持之外,ems和百分比实际上是一样的。我是否正确? 我真的不明白你在说什么。如果它们是相同的,但ems支持得更好,为什么我们不使用ems并丢弃百分比? – 2013-03-09 14:23:42
使用它有一些细微的差异。对于我所知道的你使用EM来获取字体大小。根据我的经验,ems比手机的百分比更合适。对我来说,它只是减少了麻烦。 我忘了一件事。是的,1em = 100%,但是当父标签的字体大小被声明为“小”,“中”或“大”时,它会稍微变化 - 阅读我的编辑。 – 2013-03-09 15:11:34
我已经阅读过这篇文章,现在我对它有了更多的了解。但仍然...我不明白为什么有这个浏览器的设置问题;我以为他们应该是相同的... – 2013-03-09 15:45:45
为什么会有人想要设置行高*百分比值以外的任何*其他*?这样,线条高度总是与字体高度成正比。 – JJJ 2013-03-09 13:43:14
嗯。也许我应该三思而后行。其他属性呢?在那里它不会那样工作,对吧? – 2013-03-09 13:44:37
他们是两个不同的单位;他们有不同的定义。所以这个问题没有什么意义。你可能想问一些不同的东西,但你的代码示例甚至不包含'em'单元。 – 2013-03-09 13:55:33