在CSS中确定事物的大小是很棘手的。但REM可能比你想象的要简单。
要了解如何从像素中计算REM,首先让我们简单了解一下REM究竟是什么。
什么是REM?
简单地说,REM是相对于根元素的字体大小的东西的大小。
在几乎所有的浏览器中,HTML文档的根元素(即html 元素)的默认字体大小是16px。也就是说,用户可能看不清默认的字体大小,可能需要把它变大--18px、20px,或者任何他们需要的东西。
为什么使用REMs?
那么,为什么要使用REMs?嗯,因为你应该努力使你的网站或应用程序尽可能的无障碍。如果你把你的p 字体大小定为16px ,那么它对所有用户来说都是16px ,即使是那些在阅读该大小的字体时可能有困难的用户。然而,如果你让你的p 字体大小1em ,它将默认为16px ;但是,它将为那些拥有较高浏览器字体大小的用户放大。
那么,如何从像素计算REM呢?
如果你得到的是有像素的设计,那么很可能是一个安全的假设,这些设计考虑到了默认的浏览器根字体大小为16px。因此,你可以通过简单地将所提供的像素数除以16来得到REMs。
REMs = pixels / 16
几个例子:
8px = (8 / 16) REMs = 0.5 REMs
16px = (16 / 16) REMs = 1 REM
20px = (20 / 16) REMs = 1.25 REMs
32px = (32 / 16) REMs = 2 REMs
结论
通过将你的设计从像素转换为REMs,你既可以给你的设计师提供他们的视野,同时也可以满足你的用户的可访问性需求。