-
实现页面“秒开”的关键是首屏内容可呈现时即完成关键路径执行,Vue3的BlockTree机制通过动态/静态分区跳过静态节点patch,大幅提升首帧渲染效率。
-
本文介绍如何在Flexbox中实现“标签宽度取max-content与100px的较小值”效果,即:标签内容短时不撑开(避免浪费空间),内容长时至少保持100px宽度并自动截断,同时确保值区域优先收缩。
-
Canvas阴影需同时设置shadowColor和shadowBlur且在绘制前完成,否则无效;shadowColor默认透明导致无影;shadowBlur为0或负数无模糊;clearRect等操作会重置阴影属性;drawImage不支持阴影;filter可替代但有兼容性问题;阴影偏移受坐标变换影响;大blur小图形易虚化;动画中应控制shadowBlur在4–12以保性能。
-
clamp()设置字号必须单位兼容、顺序正确、首选值合理浮动,否则整条声明被浏览器丢弃;Safari中clamp不生效主因是vw解析延迟,缺viewportmeta或嵌套@media会加剧问题。
-
\b是匹配单词边界的零宽断言,位于\w与非\w字符之间,不消耗字符;正确用法为\b目标词\b,确保只替换完整单词。
-
<tt>标签已废弃,应改用语义化HTML元素(如<code>、<kbd>)配合font-family:monospace等CSS方案,兼顾可访问性、兼容性与精确排版需求。
-
Promise不能在HTML中直接使用,因HTML是标记语言;须在script中用newPromise()构造并传入executor函数,注意fetch需检查response.ok,async/await需配合try/catch处理错误。
-
JavaScript内存泄漏排查核心是定位“本该被回收却一直存活”的对象,依赖ChromeDevTools内存面板拍快照对比,重点关注闭包、事件监听器、定时器、DOM引用及全局缓存导致的泄漏,并通过及时解绑、清空引用、清理定时器等修复。
-
图片不显示主因是src路径错误,基准点为HTML文件所在目录;以/开头为网站根目录绝对路径,无/或./开头为相对路径,../向上退一级;本地双击仅支持相对路径,服务器环境可兼用两种;需检查Network面板状态码、文件名大小写及扩展名一致性。
-
CSS盒模型与伪元素::before、::after结合可提升视觉与布局效率。伪元素具独立盒模型,默认为行内元素,可通过display调整类型,依附宿主但可单独设置样式,常用于添加装饰或辅助布局。利用content、padding、border、margin控制空间,可实现角标、双重边框、渐变遮罩等效果;在布局中支持清除浮动、创建三角箭头、扩展点击区域。使用时需声明content属性,注意pointer-events交互设置,避免滥用以保性能,兼顾可访问性。掌握其组合逻辑,能在无额外DOM下实现高效设计。
-
XMLHttpRequest的timeout必须在open()后、send()前设置,单位毫秒,且需绑定ontimeout事件;超时仅作用于网络传输阶段,responseXML为空时需主动判空,弱网下推荐首载timeout=8000ms。
-
雷神电脑播HTML5视频不额外发热,但硬件加速未启用或失效会导致CPU软解高负载升温;需检查chrome://gpu或about:support确认硬解状态,开启BIOS中VT-d,切换平衡电源模式并关闭TurboBoost。
-
Vue3的reactive通过Proxy实现响应式,支持深层监听、动态增删属性、数组索引赋值及Map/Set等结构,采用懒代理、依赖收集与触发更新闭环机制。
-
Proxy中捕获属性读取应优先用Reflect.has(target,prop)判断是否存在,避免用target[prop]===undefined误判或漏查原型链;Reflect.get不会因属性不存在抛错,需主动判断;错误信息应友好,如用constructor.name和拼写提示;Proxy实例可能影响instanceof,需对constructor、Symbol.toStringTag等特殊键单独处理。
-
高亮行颜色不明显主因是透明度(alpha)过高,应优先调低alpha值至0.2–0.35(深色主题可升至0.45),配合font-weight:500或左竖条边框增强识别,避免使用opacity。