📖 常见问题 (FAQ)
❓ px、rem和em有什么区别?
px(像素)是绝对单位,1px等于屏幕上的一个像素点,在任何情况下都不变。rem(根em)是相对单位,相对于根元素(html)的字体大小,通常1rem = 16px(浏览器默认)。em也是相对单位,但相对于当前元素的字体大小。如果当前元素没有设置字体大小,em会继承父元素的字体大小,导致嵌套时可能出现级联问题。
❓ 如何选择使用rem还是em?
推荐使用rem作为间距、字体大小的主要单位,因为它只依赖根字体大小,行为可预测。em适合组件内需要按比例缩放的元素,如按钮的内边距(padding)。对于边框宽度、阴影等视觉细节,使用px更合适。vw/vh适合全屏布局和响应式大屏适配。
❓ vw和vh单位如何计算?
1vw等于视口宽度的1%,1vh等于视口高度的1%。例如,如果视口宽度是1200px,那么10vw = 120px。100vw等于完整视口宽度。注意:移动端浏览器处理100vh时可能包含地址栏高度,导致底部被截断——可以使用dvh(动态视口高度)替代。
❓ 浏览器默认字体大小是多少?
大多数浏览器的默认字体大小是16px(用户可以在浏览器设置中修改)。这也是1rem的默认等效值。当用户在浏览器中调整字体大小时,使用rem单位的页面会随之缩放,提供更好的可访问性。
❓ pt、cm、mm这些物理单位在CSS中怎么用?
pt(点)是印刷单位,1pt = 1/72英寸,常用于打印样式表。cm(厘米)、mm(毫米)、in(英寸)是物理单位,主要用于打印媒体查询(@media print)。屏幕显示时这些单位的实际大小受屏幕DPI影响,不同设备上物理尺寸可能有差异。