-
按钮点击阴影变深的本质是利用:active伪类动态修改CSS变量--shadow-depth控制box-shadow垂直偏移,配合transform:translateY实现下陷效果,通过transition实现顺滑过渡,需注意浏览器兼容性与暗色模式适配。
-
直接用eval或Function不安全,因其共享全局作用域、可读取window.location、返回真实window,并可能通过原型链污染影响宿主;Proxy沙箱通过代理空壳对象、拦截属性访问、重写高危方法及禁用with等手段实现真正隔离。
-
setInterval是JavaScript中用于重复执行某段代码的内置函数,按指定毫秒间隔持续调用函数直至被clearInterval清除;返回timerId用于停止,不保证严格准时,可能因执行耗时导致延迟累积。
-
可通过设置Error.stackTraceLimit延长错误堆栈帧数以增强异步错误溯源能力,默认值10易截断原始调用点;开发环境建议设为50,生产环境宜保持默认或临时提升,并需配合Chrome异步堆栈开关及合理监控策略。
-
HTML5布局需正确应用盒子模型:标准盒模型中width/height仅含内容,border-box使宽高包含padding和border;flexbox实现一维弹性布局;grid构建二维网格;margin折叠需注意。
-
现代浏览器基本支持cursor:grab/grabbing,但Safari15.4及更早版本完全不支持,Firefox68前需-moz-grab,Chrome/Edge49–56需-webkit-grab。
-
:lang()选择器更可靠,因它依赖语言继承而非显式lang属性,大小写不敏感且支持BCP47,兼容性好、不污染HTML,适合多语言字体控制与精准样式匹配。
-
Node.js的Cluster模式通过主进程管理多个工作进程,共享端口处理请求,利用多核CPU提升性能与稳定性。主进程监听连接并分发任务,各worker独立运行,崩溃不影响整体服务,配合自动重启实现高可用。适用于API网关、后端服务等生产环境,需注意无状态设计、避免阻塞、合理设置worker数量及日志管理,结合PM2可实现零停机扩容。
-
面板根元素用panel,子元素统一为panel__header/body/footer;状态用panel--collapsed,尺寸修饰符需成套作用于各子元素,body需设flex:1和min-height:0防塌陷。
-
nobr标签已被HTML5废弃,W3C未采纳,仅靠浏览器兼容性残留渲染;应使用white-space:nowrap替代,它标准、语义清晰、全浏览器支持且可控可靠。
-
不能。fetchpriority仅是提示性信号,浏览器综合网络、CPU、视口位置等决定最终优先级;仅对img和iframe生效,需src/srcdoc存在且Chromium112+支持。
-
overflow属性是浏览器对溢出内容的裁剪与滚动策略声明,不改变内容本身;hidden会裁剪绝对定位子元素,clip更安全;x/y轴不可混用visible与scroll;auto按需显示滚动条,scroll始终预留空间;text-overflow:ellipsis需white-space:nowrap和overflow:hidden共同作用。
-
Promise.allSettled是用于并行执行多个Promise并收集全部终态结果(成功或失败)的方法,返回每个Promise的status、value或reason;与Promise.all不同,它不因任一拒绝而中断,而是等待所有完成。
-
focus()不会自动滚动到可视区域,需手动调用scrollIntoView;应按tabindex或语义顺序聚焦首个非法项,跳过disabled/readonly元素;Vue中需nextTick后聚焦;移动端Safari要求focus必须在用户手势同步链内执行。
-
flex-grow控制剩余空间分配权重,不负责对齐;适用于图文并排动态分宽场景,如导航栏图标+文字,需配合align-items或align-self实现垂直居中。