interview
frontend-css
说说 pxemrem 的区别及使用场景

前端 CSS 面试题, 说说 px,em,rem 的区别及使用场景

前端 CSS 面试题, 说说 px,em,rem 的区别及使用场景

QA

Step 1

Q:: px、em、rem 的区别及使用场景是什么?

A:: px 是像素单位,表示一个固定的大小,常用于需要精准控制元素尺寸的场景;em 是相对单位,基于父元素的字体大小,通常用于文本相关的样式,以便于响应式设计;rem 也是相对单位,但基于根元素(html)的字体大小,通常用于在全局范围内保持一致的比例缩放。

Step 2

Q:: px、em、rem 的优缺点是什么?

A:: px 的优点是固定且不受其他元素影响,缺点是缺乏灵活性;em 的优点是相对灵活,可以根据父元素的大小进行调整,缺点是容易产生级联效应,导致尺寸难以预测;rem 的优点是基于根元素,方便全局控制,缺点是需要统一调整根元素的字体大小。

Step 3

Q:: 如何在响应式设计中合理使用 px、em、rem?

A:: 在响应式设计中,px 适用于边框、阴影等不需要响应的部分,em 适用于需要基于父元素大小调整的文本或布局,rem 适用于全局统一比例的布局元素,如外边距和内边距,以便在不同设备上保持一致的视觉效果。

Step 4

Q:: 浏览器默认的字体大小是多少?如何更改根元素的字体大小?

A:: 大多数浏览器的默认字体大小为16px。可以通过在 CSS 中设置 html 元素的 font-size 来更改根元素的字体大小,例如 html { font-size: 62.5%; },这样 1rem 就等于 10px,更易于进行计算。

用途

这个内容是前端开发中的基础知识,涉及到 CSS 中不同单位的使用及其影响。面试这一内容可以考察候选人对 CSS 单位的理解程度,以及在实际开发中如何选择合适的单位进行布局和样式设置。在实际生产环境中,开发者经常需要在响应式设计、不同屏幕尺寸的适配中合理使用 px、em、rem,以确保页面的美观性和一致性。\n

相关问题

🦆
如何使用 CSS 进行响应式设计?

可以使用媒体查询(media queries)根据设备的屏幕尺寸或其他特性(如分辨率)来应用不同的 CSS 样式,以适应不同的设备。还可以使用相对单位(如 em、rem、%)和弹性布局(如 Flexbox、Grid)来创建响应式布局。

🦆
什么是视口单位vw,vh?什么时候使用?

视口单位是相对于视口大小的相对单位,1vw 等于视口宽度的 1%,1vh 等于视口高度的 1%。这些单位通常用于希望元素的尺寸随着视口大小变化的场景,例如全屏背景或视口宽度占比的布局。

🦆
CSS 中的优先级规则是什么?

CSS 中的优先级由选择器的特异性(specificity)决定,内联样式的优先级最高,其次是 ID 选择器,接下来是类选择器、属性选择器和伪类选择器,最后是元素选择器和伪元素选择器。同时,重要性标识符(!important)可以强制提高优先级。

🦆
如何避免 CSS 中的单位转换错误?

可以通过熟练掌握各个单位的换算关系,尤其是在使用 rem 和 em 时,明确它们的参照对象,并且在项目初期统一约定设计规范。此外,使用 CSS 预处理器(如 SASS、LESS)中的变量和函数也有助于减少错误。