何时选择 REM 而不是 PX?

Joã*_*vin 7 html css units-of-measurement

我什么时候应该使用 rem 而不是 px?我看到很多文章说我应该使用 REM 来尊重用户的偏好,但是示例总是说字体大小,而不是整个样式 - 边距、填充、边框、宽度、高度等。 拿了这篇文章例如:我应该在 CSS 中使用 px 还是 rem 值单位?

所有的答案都是关于字体大小的,好吧,我明白了,rem 更适合字体大小,但是其他样式呢?我看到引导程序使用 px 到容器类,到 col-* 类,是否有原因?

我正在创建这个覆盖 Bootstrap 默认样式的站点,我应该用 pxs 覆盖它使用 px 的地方还是应该使用 rem?

谢谢你。

Nas*_*r T 8

在你进入你应该使用的 css 单位之前。您必须了解单位本身。因为您是唯一知道您的网站想要什么样式的人,例如(静态、动态/响应式)。只有您可以决定使用哪个单位。所以为了做出决定,首先要了解css单元的类型和它们的优势。这是 w3school 链接,解释了所有单位,例如emrem等等。

https://www.w3schools.com/cssref/css_units.asp

现在具体说到您的观点,定义的 rem 是为根元素设置的字体大小<html>. 默认情况下,<html>根元素的字体大小为 100%,等于浏览器设置的 16px。它可以在浏览器设置中更改,也可以在 css 中使用html {font-size: 20px}. 无论 html 标签的字体大小设置如何,都将等于 1 rem。

现在,您可以将 rem 用于填充和边距等,但不推荐使用,因为例如您已经为您的站点设置了填充、边距和宽度等的 rem 值,其中您的浏览器默认字体大小设置为 16 像素。所以这一切看起来都很好并且经过了调整,但是如果浏览您网站的用户将浏览器的默认字体大小设置为 25px 呢?这将破坏您网站的设计。所以这就是为什么对于响应式站点,主要使用单位 %, vw/vh。至于px单位。它们用于帮助设置静态值,以便您修复大小而不是重新调整大小。

所以现在您知道要保留网站的大小了。您可以根据需要使用这些单位。

希望这有助于您的理解,再次尝试理解理论本身,然后再考虑其他人对该理论的看法。:) 快乐编码。

  • **如果浏览您网站的用户将浏览器的默认字体大小设置为 25 像素,该怎么办?这会破坏您网站的设计**为什么?如果只放大字体大小25/16=156%,而不放大边距和填充,这会破坏网站设计吗? (5认同)