-
HTML中用<hr/>标签添加语义化横线,表示内容主题分隔;需用CSS自定义样式,禁用过时属性;无语义需求时优先用CSS边框。
-
Loop属性本身不消耗额外CPU或内存,它仅由浏览器媒体解码器原生处理,无JS事件循环介入;卡顿源于视频首尾瑕疵、高分辨率解码压力、preload未设为auto、iOS静默禁播或JS手动循环引入seek延迟与缓冲区清空等问题。
-
letter-spacing用于控制所有字符间间距,支持正负值及normal,可继承但可被子元素覆盖;应与word-spacing区分,响应式推荐em/ch单位,避免内联样式和rem,注意iOSSafari负值渲染偏差。
-
直接用trimStart()无法可靠清理粘贴文本的混合缩进,需先归一化换行、清除零宽字符,再提取首行非空行缩进前缀并逐行移除。
-
<kbd>标签用于语义化标记用户应输入的键盘操作,如<kbd>Ctrl</kbd>+<kbd>S</kbd>,需配合恰当CSS(如inline-block、圆角边框、背景色)增强视觉识别,避免滥用作装饰;多平台场景优先用Unicode符号(如⌘、⌥),组合键须分标签并用 连接,确保可访问性与语义准确。
-
bottom:0只对position为absolute、fixed或sticky的元素生效,且依赖最近已定位祖先(如position:relative)作为参考系;若无,则锚定视口底部。
-
LongTasksAPI仅记录≥50ms的主线程任务,不能直接检测用户感知的卡顿;需结合≥1s耗时、帧率丢失或输入延迟等指标综合判断,且存在Safari不支持、attribution为空、漏报连续短任务等局限。
-
Webpack5配sass-loader需装sass(非node-sass),用sass-loader@13.x并显式配置implementation:require('sass');Vite热更新失效多因@import路径别名未正确解析;PostCSS必须在sass-loader后执行;VueCLI升级报错常因loader版本不匹配或additionalData传undefined。
-
box-shadow动画直接加transition无效,因它是复合属性,浏览器无法插值结构不同的阴影值(如none→有阴影);必须保持参数数量、顺序、单位一致,且初始状态也需设为rgba透明阴影。
-
WebAssembly在图像卷积中比JavaScript快,因其采用线性内存、强类型和SIMD指令,直接映射C/Rust内存访问模式,避免JS动态类型检查与V8循环优化瓶颈;但仅在图像≥1024×768且卷积核≥3×3时优势稳定,小规模任务反因启动、调用及内存拷贝开销而更慢。
-
overflow-wrap:break-word失效主因是white-space:nowrap、flex子项缺min-width:0、容器无width/max-width或display表格/行内块等布局压制,需配合word-break:normal并避免与break-all混用。
-
不能直接用Bootstrap的col-类实现左侧固定,因为col-基于百分比栅格,会随屏幕缩放(如col-2在lg下从200px缩至165px),违背“固定200px”目标;真正固定需脱离栅格、改用d-flex容器+flex-grow-0+显式width/min-width控制。
-
判断一个变量是否为数组最推荐的方法是使用Array.isArray(),因为它准确、可靠且能正确处理跨iframe等不同执行环境下的数组判断;2.typeof不能用于判断数组,因为它对所有对象(包括数组、普通对象、null)都返回"object",无法区分具体类型;3.instanceofArray在跨执行环境(如多个iframe)时会失效,因为不同环境中的Array构造函数不相等,导致判断错误;4.Object.prototype.toString.call()也能正确判断数组且跨环境安全,但语法较冗长
-
W3C验证器仅检查静态HTML语法合规性,不执行JS、不解析动态DOM、不校验CSS或可访问性;其报错需区分硬性标准违规(如缺alt、非法嵌套)与框架扩展误报(如v-bind:src),关键看是否真实违反HTML标准。
-
Intl.DateTimeFormat默认使用用户系统时区,无需传timeZone;format()仅接受Date实例或时间戳,禁用字符串;locale与timeZone解耦,SSR时需注意服务端时区非用户本地时区。