如何响应地调整 html 文本元素的大小但不相对于其他元素?

How to size an html text element responsively but not relative to other elements?

我有一个用 Canva.com 制作的设计,我正试图将其转换为 HTML、CSS 文档。在 Canva 中,文本有不同的大小,例如 12、42 等(我不确定这些是否是像素)。我在这里要做的是使页面响应(当屏幕较小时会调整文本大小)和调整文本大小而不是相对于其他元素(可能是它们的父元素)。

假设我有两个文本元素,我想相应地调整它们的大小:

文本 A = 12 Canva 文本大小单位 文本 B = 24 Canva 文本大小单位

我想相应地调整文本 B 的大小,使其看起来比文本 A 大两倍。

如果我对文本 A 使用 font-size: 1.2em,对文本 B 使用 font-size: 2.4em。它会让事情看起来像我预期的那样吗?那么,是1.2em+1.2em = 2.4em吗?

在大多数文字处理或印刷设计程序中,文本大小以 pt 为单位。网站通常使用 rem 作为响应大小。像 rem 这样的固定大小单位是可加的,其中 1rem 是 2rem 大小的一半。

https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/Values_and_units#lengths

So, is 1.2em+1.2em = 2.4em?

不一定:em 是相对于当前 tag/class/ID 定义的字体大小而言的,因此在组合不同标签时不起作用(尤其是 headers,如 h1 - h6 , 还有 p, li 等).如果需要1.2+1.2=2.4这样的字号关系,最好使用rem作为字号单位。它 总是html 标签的已定义(或未定义:浏览器默认)字体大小有关。