在前端面试中,CSS一直是考察重点,面试官通常会从盒模型、布局方式、定位机制以及浏览器兼容性等角度提问。掌握这些常见题目背后的原理,比死记硬背答案更有效。

一、标准盒模型与IE盒模型的区别
盒模型是CSS布局的基础。标准盒模型下,元素的宽度只包括内容区,内边距和边框会在宽度之外增加。IE盒模型(通过 box-sizing: border-box 模拟)则将边框和内边距算进声明的宽度里。
/* 标准盒模型:宽度100px仅为内容区 */
.box-standard {
width: 100px;
padding: 10px;
border: 5px solid #333;
box-sizing: content-box;
}
/* IE盒模型:总宽度仍为100px */
.box-ie {
width: 100px;
padding: 10px;
border: 5px solid #333;
box-sizing: border-box;
}
二、如何实现水平垂直居中
这是高频题。现代方案多用Flex布局,旧方案可用定位加负边距或 transform。
Flex方式
.parent {
display: flex;
justify-content: center;
align-items: center;
height: 300px;
}
定位加transform方式
.parent {
position: relative;
height: 300px;
}
.child {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
三、清除浮动的方法
浮动元素会脱离文档流,导致父容器高度塌陷。常见清除浮动手段如下:
- 使用 overflow: hidden 触发BFC
- 添加空元素并设 clear: both
- 使用伪元素 after 清除
.clearfix::after {
content: "";
display: block;
clear: both;
}
四、浏览器兼容性常见坑
在旧版浏览器中,Flex需要带 -webkit- 前缀,IE对 Grid 支持很差。此外,inline-block 元素间空白符会引发间隙,可用 font-size: 0 处理。
| 问题 | 解决方式 |
|---|---|
| IE8不支持 rgba | 使用滤镜或固态色回退 |
| 默认外边距不一致 | 使用 reset.css 统一 |
五、position定位类型
面试常问 static、relative、absolute、fixed 和 sticky 的区别。其中 sticky 是相对与固定混合,常在滚动吸顶场景使用。
理解CSS面试题的关键,是弄清每种写法背后的渲染规则,而不是只记代码片段。
以上题目覆盖了大部分前端CSS面试核心点,复习时建议手写代码加深记忆。
CSS_layoutcross_browserbox_model修改时间:2026-07-27 00:18:17