-
用class切换背景色应将颜色变量抽离到主题类名(如theme-light/theme-dark),通过CSS选择器层级或CSS变量统一控制,避免硬编码和!important;需同步设置HTML根元素class防FOUC,并显式重置表单控件及SVG等所有颜色上下文。
-
懒加载与动态导入本质是按需加载技术,核心为动态import()语法,支持运行时调用、变量路径和构建工具代码分割,用于路由、交互、视口等场景,需结合实际性能权衡使用。
-
不能直接读取富文本或图片二进制数据,navigator.clipboard.read()仅能读取指定MIME类型的Blob,但支持极有限:仅Chromium稳定支持图片(image/png等),text/html常被忽略或降级为纯文本;需用户手势触发、HTTPS环境,且Firefox、Safari不支持read()。
-
JavaScript迭代器是支持for...of等语法的协议机制,核心为返回{value,done}对象的next()方法;需同时满足可迭代协议(含[Symbol.iterator]方法)和迭代器协议(next方法返回指定结构对象)。
-
Flex从模型层面绕开float缺陷,容器真实感知子项并统一调度空间;float靠推挤且垂直失控,flex用justify-content和align-items统一控制对齐,原生支持响应式、等高列、顺序切换与gap间隙管理。
-
CSS的overflow属性用于控制容器内容溢出时的显示方式,包括hidden(裁剪)、auto(按需滚动)和scroll(强制滚动条),需配合尺寸设置与盒模型使用。
-
transition-timing-function用于控制CSS过渡速度变化,支持ease、linear、ease-in、ease-out、ease-in-out等预设函数,也可通过cubic-bezier()自定义贝塞尔曲线实现弹性或回弹效果,配合steps()可创建分步动画,如数字翻牌,合理使用可提升界面动效的自然度与交互质感。
-
应使用width+var(--nav-width)替代flex-basis,因CSS规范限制flex-basis不支持直接解析CSS变量;侧边栏设width:var(--nav-width,240px);flex:00auto;,主内容区设flex:1;。
-
CSS-in-JS不能在纯HTML中直接使用,因其依赖JavaScript运行时、模块系统及专用库(如styled-components)动态生成并注入样式,而原生HTML无此执行环境。
-
函数是JavaScript的基石和一等公民,可赋值、传参、返回、动态创建;所有异步与事件处理必须依赖函数;函数声明与表达式在提升、this绑定、调试信息上差异显著;闭包会保留外层变量导致内存驻留。
-
details+summary可实现无JS语义化树形菜单,支持键盘和屏幕阅读器,但IE不支持;需用JS实现搜索联动和状态同步,并严格保持DOM、open属性与aria-expanded/aria-hidden一致。
-
link标签在HTML解析时立即并行加载CSS,尽早构建CSSOM,减少渲染阻塞时间;2.@import需等待主CSS文件下载解析后才发起请求,增加网络往返,延迟样式加载,影响页面渲染性能。
-
clear属性只清除当前元素外边距区域被浮动元素侵入的现象,而非清除浮动本身;它仅对块级盒生效,需配合BFC防止塌陷,现代布局中已被Flexbox和Grid取代。
-
CSS烟雾动画的核心技术包括:1.使用@keyframes定义动画关键帧,控制烟雾从生成到消散的全过程;2.利用transform实现烟雾的位移、缩放和旋转,提升动画性能;3.通过opacity控制烟雾的渐显与渐隐;4.运用filter:blur()增强烟雾扩散的模糊效果;5.结合radial-gradient和border-radius塑造烟雾团的形态;6.采用多个烟雾元素配合animation-delay实现此起彼伏的动态效果。这些技术共同作用,可在不依赖JavaScript的情况下实现轻量且流畅的烟
-
animation-play-state是唯一能真正暂停并从断点继续的原生方案,仅适用于纯CSS@keyframes动画;Canvas、Three.js和requestAnimationFrame动画需手动管理时间戳与状态,否则暂停后会重头开始或跳变。