-
组件嵌套尺寸失控本质是盒模型在多层继承中被反复计算,需逐层定位box-sizing、margin折叠及transform叠加问题,用outline和computed面板精准排查。
-
console.log不够用,应优先使用console.table()、console.group()、console.time()、console.assert()等结构化调试方法,并结合断点调试、全局错误监听、console.dir和$0等DOM调试技巧。
-
父容器设为grid时,子元素若设position:absolute会脱离Grid流而相对于最近已定位祖先定位;应给Grid父容器加position:relative以提供定位上下文,优先使用Grid自身对齐能力替代绝对定位。
-
JavaScript闭包是函数与其词法作用域中变量的组合,可封装私有变量、解决循环绑定问题、实现函数工厂与柯里化、以及缓存计算结果。
-
浮动塌陷是因浮动元素脱离文档流致父容器高度为0;推荐用overflow:hidden触发BFC解决,但需防溢出裁剪;clear应加在后续兄弟元素上;现代布局优先用Flexbox或Grid。
-
媒体查询必须写在样式表顶层,不能嵌套在CSS选择器内部;推荐使用min-width实现移动优先;常见失效原因包括优先级覆盖、加载顺序错误和浏览器缓存;断点应统一用px单位。
-
可在浏览器中用前端技术解析.docx文件:一、mammoth.js转HTML;二、JSZip+docxtemplater读XML;三、Office.js仅限加载项;四、原生JSZip手动解压提取。
-
fetch()是现代标准但需手动补全Cookie、错误处理和超时;常见无响应因忘await/.then(),且4xx/5xx不reject;需检查res.ok、JSON.stringify、FormData用法、GET无body、credentials控制跨域Cookie、AbortController实现超时与取消。
-
HTML5无版本跳转差异,跳转行为取决于实现方式:a标签、JSAPI(如location.assign)、HTTP重定向在HTML4/5中完全一致;唯一真差异是HTML5新增的HistoryAPI(pushState/replaceState),支持无刷新路由但需同源且服务端配合。
-
使用transform和opacity实现Hover动画可避免重排重绘,因二者由GPU在合成阶段处理,性能更优;通过scale实现放大、opacity模拟变暗,并用will-change或translateZ(0)提升为独立图层,确保动画流畅。
-
用Notion管理Mac上的HTML+CSS学习项目,可通过自定义数据库整合进度、知识点、代码练习与资源链接。1.创建主数据库,设标题、状态、类型、难度、耗时、完成日期、代码链接和笔记关联字段;2.预设三类模板:基础语法学习(含标签表格、MDN链接、练习题)、小项目实战(目标描述、技术点、截图、反思)、Bug调试记录(问题、错误代码、解决方案、知识点归类);3.优化视觉风格,用灰色callout模拟Mac侧边栏,SFPro字体感排版,分隔线、Toggle隐藏细节,添加emoji提升可读性;4.建立知识点库
-
CSSLint已停止维护,其解析器基于2011–2014年旧规范,无法识别现代CSS语法(如自定义属性、calc()空格、嵌套、@layer等),导致大量误报或静默跳过,不建议新项目使用。
-
text-overflow:ellipsis仅对block或inline-block元素生效,且必须同时满足white-space:nowrap、overflow:hidden和明确的width/max-width;flex容器中需加min-width:0,多行省略需用-webkit-box方案。
-
width/height过渡卡顿因触发布局重排且无法GPU加速;transform:scale()仅重绘、支持硬件加速,更流畅。
-
WebSocket协议实现全双工通信,适用于实时场景;通过newWebSocket()建立连接,监听onopen、onmessage、onerror、onclose事件处理交互;支持发送JSON或二进制数据;需设置binaryType处理ArrayBuffer等格式;网络不稳定时应实现重连机制与心跳检测,确保连接可靠性。