-
锚点导航实时高亮需用IntersectionObserver监听目标元素可见性,设rootMargin补偿fixed头部、threshold为[0.1,0.5]防抖动,hashchange仅用于清理active状态,不可替代滚动位置判断。
-
安卓WebView点击后半透明灰色遮罩是-webkit-tap-highlight-color的默认行为,需对可点击元素显式设为transparent并确保样式优先级、作用域及语义属性(如role="button")完备。
-
高频读取getter本身不直接耗电,真正造成电池负荷的是它背后触发的计算、内存访问、状态同步或副作用。
-
true+1===2成立,因为JavaScript在数值运算中将true隐式转换为1,再执行加法得2;加号优先数值转换而非字符串拼接,且布尔转数值规则为true→1、false→0。
-
全选状态由父组件通过checkedAllprop控制,子组件根据items渲染选项并监听变更,通过ref设置indeterminate实现半选态;当已选项数大于0且小于总数时显示短横线。
-
Less无法运行时判断渐变类型,应通过分离的.linear()和.radial()宏分别封装,共用色标逻辑;方向/形状参数需严格区分,避免非法CSS。
-
scroll-timeline需滚动容器、时间轴定义、动画绑定三者配合;Chrome/Edge115+原生支持,Firefox需开启flag且受限,Safari当前完全不支持。
-
默认cluster.schedulingPolicy在macOS/Windows为SCHED_NONE,导致连接集中到首个worker;Linux为SCHED_RR故较均衡。应显式设置cluster.schedulingPolicy=cluster.SCHED_RR。
-
ServiceWorker可拦截表单提交实现离线可靠提交:监听fetch事件识别POST请求,序列化数据存入IndexedDB;网络恢复后通过postMessage触发重试,最多3次;主页面显示队列状态并同步结果,服务端需幂等;文件上传需预处理为ArrayBuffer存储。
-
用CSSGrid实现响应式书架网格的核心是grid-template-columns:repeat(auto-fit,minmax(240px,1fr)),配合gap:1.5rem、卡片内flex-column布局、封面图aspect-ratio:2/3+object-fit:cover、交互仅用transform/opacity避免重排,以及文字用-webkit-line-clamp和clamp()自适应截断。
-
grid-template三段式语法必须严格按「区域定义行定义/列定义」顺序书写,缺一不可;引号为必需语法,点号占位未用单元格,Firefox对换行更敏感,斜杠/是关键锚点。
-
break-inside:avoid仅在多列布局中对触发BFC的块级卡片容器生效,若父容器未设column-count/width、卡片非block/flow-root、含absolute/flex/grid或overflow:hidden,或浏览器为IE11,则会失效。
-
在网页开发中,实现换行最常用的方法有两种:使用HTML的标签和通过CSS控制。一、标签是简单直接的换行方式,适合文字内容中的局部换行,如地址、诗歌等,但语义较弱,控制力差,不适合复杂布局;二、CSS实现换行更灵活,适合现代布局,可通过块级元素或white-space属性控制,结构清晰、样式可控,尤其适用于响应式设计;三、选择标准取决于场景:适用于简单文字换行,CSS更适合布局相关的换行,同时需注意富文本编辑器输出时的适配问题。两种方法各有优劣,合理选用可提升代码清晰度与维护性。
-
Symbol属性访问为O(1):利用唯一ID直接定位槽位,跳过哈希计算与冲突处理;稳定使用(如顶层常量)可纳入隐藏类获固定偏移,动态生成则降级字典模式影响性能。
-
移动端z-index失效主因是父级创建了独立层叠上下文,而非数值过小;需检查position是否非static、向上排查触发上下文的父元素(如transform/opacity/filter),并用Portal/Teleport将浮层提至body。