假设我已经定义了以下CSS规则:
.className {
font-size:0.89em;
}
我的问题是,当我使用'em'单位时,我能在分数中走多深,以便浏览器实际支持它,并使字体大小对于em值的微小分数变化呈现出不同的效果?
假设我已经定义了以下CSS规则:
.className {
font-size:0.89em;
}
我的问题是,当我使用'em'单位时,我能在分数中走多深,以便浏览器实际支持它,并使字体大小对于em值的微小分数变化呈现出不同的效果?
JohnB是正确的。无论我们使用什么尺寸单位,我们仍然以像素为单位进行渲染,而ems的微小变化不会改变显示大小:
例如,对于最初显示高度为20px*的文本,当添加规则使其高度为原始高度的.99em时,我们可以看到没有实际变化:
20 * 0.99 = 19.8
http://meyerweb.com/eric/thoughts/2010/02/10/rounding-off/
http://ejohn.org/blog/sub-pixel-problems-in-css/
*对的,我知道20像素的字体大小并不总是以20像素的大小显示!
需要记住的是,像所有浮点数一样,分数em值容易出现舍入误差。
我在设置媒体查询边界时发现了这一点,其中一个最大宽度与另一个最小宽度相差0.00001em,结果被四舍五入并且两个查询都被激活。将差异更改为0.001em后,查询按预期工作,独占式地。