-
Webflow导出HTML时忽略align属性,因其采用CSSFlex/Grid布局且align在HTML5中已废弃;图片对齐需通过自定义CSS类(如.img-wrap-leftimg{float:left})实现,且导出前须勾选“Downloadassetslocally”避免图片404。
-
最安全优雅的方式是用工厂函数返回新对象,因对象字面量会导致多个组件实例共享同一引用,引发引用污染;Vue中default必须为无参函数,React中推荐组件内解构合并或useMemo。
-
animation-fill-mode:forwards必须显式声明,因其默认值为none,动画结束后会立即丢弃关键帧样式并“闪回”原始状态;需在触发动画的规则中与animation同级书写,且关键帧中须完整声明所有需保留的属性,同时注意display、visibility及高优先级样式的覆盖影响。
-
不能只定义--primary-color:hsl(210,70%,60%),因浏览器将其视为字符串,无法在hsl()中解析var(--primary-color),导致回退为初始色或透明;且锁死H/S/L维度,无法单独调整任一参数。
-
Promise是解决“回调地狱”的利器,原因在于其通过状态管理和链式调用将原本嵌套的异步操作变得线性、清晰。1.Promise对象有三种状态:pending、fulfilled、rejected,状态一旦改变不可逆;2.使用newPromise()创建实例,通过resolve和reject控制状态转换;3.通过.then()处理成功结果并支持链式调用,使异步逻辑流程扁平化;4.通过.catch()统一捕获链中任意环节的错误,提升错误处理效率;5.面对并发任务,Promise提供.all()(全部成功才继续
-
JavaScript不直接适配屏幕,而是通过检测(如clientWidth、visualViewport)、响应(resize/orientationchange事件)和补位(动态改class、canvas像素比)实现;需节流监听、区分CSS/物理像素、配合viewport与dpr处理高清屏。
-
响应式灰度开关通过可监听、动态更新的状态变量实现运行时功能控制,支持远程配置、动态加载、实时更新与本地缓存降级,无需重载页面。
-
WebWorkers无原生事件模型,需用postMessage+状态机+消息路由模拟事件调度:主线程捕获真实事件并发送带type和payload的消息,Worker内用Map实现简易事件分发器,支持多阶段反馈与ID关联的Promise化封装。
-
Array.from(newSet(arr))对简单原始值去重高效,百万级数据通常5–20ms;对象需用Map按字段去重;超大数据应分块、流式处理或移至WebWorker。
-
fixed定位缩放偏移的根源是视口坐标系漂移,须用vh/vw替代px实现同比例缩放,禁用混用单位、transform父级及错误viewport配置,并辅以visualViewportAPI微调。
-
ServiceWorker生命周期是状态驱动的异步过程,注册仅提交申请,install和activate可能被阻塞或跳过;需通过waitUntil保证缓存可靠性,用skipWaiting和clients.claim推进控制权交接。
-
column-count没生效主因是容器未设宽度、内容过短或被其他CSS覆盖;需确保块级容器有width/max-width、文本连续且无打断元素,并检查overflow/transform/contain等禁用属性。
-
box-sizing:border-box必须同时应用于input和button才能稳定对齐,因二者默认盒模型不同:button为border-box(border/padding含在height内),input为content-box(border/padding外扩),仅设相同height会导致视觉错位;line-height比height更可靠,尤其在Flex布局中能自然居中并拉齐高度。
-
type="module"是浏览器的环境切换器,启用后整套脚本加载、解析、执行逻辑变为ES模块规范:import必须在type="module"脚本中使用,路径需带./或/且含扩展名,模块默认defer并按模块图顺序执行,作用域隔离,预加载用modulepreload,跨域需crossorigin及CORS头。
-
:empty伪类用于选择无子元素或内容的元素,可隐藏空提示容器、标识表格空单元格、设置动态内容占位符;需注意其严格判定规则,仅匹配完全空白的元素,含空格、换行或注释均不匹配。