上一篇
场景还原:
面试官推了推眼镜:"说说BFC是什么?怎么触发?" 你突然大脑空白,只记得昨天刚看过但死活想不起来... 别慌!这份2025年最新整理的CSS面试急救包,帮你把知识点焊死在脑子里!
问:"box-sizing: border-box和content-box区别?实际开发怎么选?"
答:
content-box
(默认):宽度=内容宽度,加padding/border会撑大盒子 👉 适合精确控制内容区域 border-box
:宽度=内容+padding+border总和 👉 响应式布局神器* { box-sizing: border-box }
能避免数学题噩梦 问:"如何创建BFC?解决什么问题?"
答:
BFC(块级格式化上下文)就像结界:
overflow: hidden
、float
、display: inline-block
等 死亡追问:"至少说出5种水平垂直居中方案"
参考答案:
/* 方案1:flex终极解法 */ .parent { display: flex; justify-content: center; align-items: center; } /* 方案2:grid降维打击 */ .parent { display: grid; place-items: center; } /* 方案3:绝对定位+transform */ .child { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
🤯 加分项:能对比各方案优缺点(兼容性/灵活性)
问:"如何用CSS变量实现主题切换?"
代码示例:
:root { --primary-color: #1890ff; --bg-color: #fff; } .dark-mode { --primary-color: #722ed1; --bg-color: #1f1f1f; } button { background: var(--primary-color); }
🚀 亮点:配合JS修改document.documentElement.style.setProperty()
实现动态换肤
陷阱题:"哪些属性会导致重绘?如何优化动画?"
避坑指南:
transform
和opacity
(触发GPU加速) width/height
(引发回流) will-change: transform
提前告诉浏览器备战 问题:"Retina屏如何实现真正的1px边框?"
解决方案对比:
transform: scaleY(0.5)
border-image
绘制线段 @media (resolution: 2dppx)
手写代码题:"实现超出3行显示..."
.text { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
⚠️ 注意:-webkit-
前缀目前仍是主流解决方案
div { color: red !important; } #test { color: blue; } div.text { color: green; }
答案:红色!!important
碾压一切(但实际开发慎用)
开放题:"display:none和visibility:hidden的区别?"
深度解析:
display:none
:彻底消失,不占空间 visibility:hidden
:隐身但占位,能触发点击事件 :has()
选择器) 最后鸡汤:面试就像CSS——规则看似简单,但魔鬼都在细节里!✨
参考2025年主流前端技术栈及企业面试反馈)
本文由 史以蕊 于2025-07-31发表在【云服务器提供商】,文中图片由(史以蕊)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/491962.html
发表评论