【发布时间】:2025-12-14 21:25:01
【问题描述】:
许多网站编写的代码破坏了用户设置自己的字体大小的能力(在浏览器/移动设备的设置中)。为了避免这种情况,当用户更改默认字体大小时,在技术层面上究竟会发生什么?有什么影响?
- CSS 中指定的
html根元素font-size?它会扩展还是覆盖它? - 单位
em、px、rem、%? - 对于那些尝试进行流畅排版的人来说,其他单位呢,例如
vh、vw、vmin、vmax? - 这将如何影响
calc()? - 移动设备的行为是否相同?
尚未形成完整答案的注释:
但是,以下内容均未提及规范,而只是特定行为的集合。
- 根据我自己的实验,当用户更改浏览器字体大小时,使用 % 为
html设置font-size确实会缩放。 -
This answer有一些信息,好像是说设置
html时,px不调整,但是em,rem,%做。 - This site 有一些非常好的信息,但这些信息都是十年前的,并且不确定所提到的行为是否仅仅是因为浏览器错误或者它是否是这样设计的。
- 人们在谈论这个问题时使用了很多草率的语言。例如,人们会谈论“基本字体大小”,但没有指定这是在 root/
html元素中指定的字体、浏览器设置还是两者的组合。我相信那些已经知道交互的人很清楚,但对我来说,我仍然不清楚这些概念。
【问题讨论】: