-
mark标签默认背景色不可靠,必须显式设置background-color和color才能稳定生效;只设color无效,因默认黄色背景可能被深色模式、CSS重置或浏览器差异清除,导致文字糊底或完全不可见。
-
纯CSS实现DNA双螺旋需同时满足三条件:每个.line独立设--d、容器启用transform-style:preserve-3d和perspective、::before与::after镜像旋转。--d必须内联于每个.line以实现逐个错开延迟,否则同步转动失螺旋感;preserve-3d和perspective须在容器上开启3D渲染管线,否则伪元素无纵深;镜像旋转需严格一正一负绕Y轴,确保双链缠绕逻辑正确。
-
HTML文档结构直接影响SEO,因搜索引擎依赖语义标签嵌套识别内容主次与意图;<h1>错置<footer>或DOM过深超6层、<main>包裹不当、hreflang与canonical矛盾等,均导致降权或内容不被索引。
-
JavaScript测试分单元、集成、端到端三类,核心是验证函数行为、模块逻辑和用户流程;关键聚焦边界条件、副作用、异步逻辑与状态变化;常用Jest、Vitest、Cypress和Playwright等框架。
-
直接缓存已编译的Pattern实例最有效——它线程安全、不可变,可避免重复compile的性能开销和GC压力;正则编译需解析、建模、验证、优化,高频场景反复编译会拖慢响应并加重内存负担。
-
video标签中muted必须为无值布尔属性,写成muted而非muted="true";autoplay与muted需同时作为HTML属性存在,JS后设无效;defaultMuted仅影响首次加载,实际应使用muted控制静音。
-
requestAnimationFrame适用于需与屏幕刷新率同步的连续视觉更新,如滚动视差、Canvas绘图等;一次性动画应优先用CSStransition。其核心是递归调用加时间戳控制,使用浏览器提供的高精度timestamp,避免Date.now()。
-
识别隐藏性能退化需建立带基线的自动化流水线:LighthouseCI通过多次采样、历史对比、业务阈值断言及CI集成,将偶然检测变为持续守门,精准定位LCP、CLS等指标恶化并驱动团队响应。
-
CSS变量不继承,var()沿DOM向上查找最近生效定义;应将变量定义在组件根元素(如.user-card)实现局部作用域,避免:root全局污染;all:unset仅适用于不可控第三方内容兜底,非解决变量冲突方案。
-
box-sizing:border-box和line-height是解决input与button高度不一致最稳定方案;需统一设置并加浏览器前缀,同时重置outline、border,button需type="submit"并处理移动端touch-action与缩放。
-
安全引入第三方CSS库需确保来源可信、校验完整性和实施策略限制,具体包括:使用HTTPS协议从知名CDN(如jsDelivr、unpkg)引入并指定版本号;添加SRI完整性校验防止资源被篡改;配置CSP策略限制样式源仅限于自身和可信CDN;对高安全性要求项目建议本地托管以降低依赖风险。
-
accept属性仅前端提示,不校验文件真实类型;必须结合文件名后缀与后端magicbytes双重校验,且multiple上传时无法自动过滤混合类型。
-
必须用display:none才能让元素彻底消失、不占位、不影响布局;visibility:hidden仅透明化但保留盒模型参与布局,opacity:0仍可交互且性能开销最大。
-
SCSS中应基于基础单位$spacing-unit派生语义化spacingmap,并封装spacing()函数支持方向参数与fallback,配合命名空间utilityclass和ESLint约束,实现可维护、可扩展的间距管理。
-
因为.container的width始终为100%,但实际渲染宽度由断点媒体查询中的max-width决定;例如在≥1200px视口下,computedwidth显示1140px,正是@media(min-width:1200px){.container{max-width:1140px}}生效所致。