-
浮动卡片高度不一致会导致换行错乱,因浮动元素贴靠前一个元素边缘而非按行对齐;可靠解法是每行首个卡片加clear:left,如.card:nth-child(4n+1){clear:left;}。
-
resize不更新CSS变量,因它是纯渲染层行为,只改内联width/height,不触发事件或同步--panel-width;需在mouseup时用offsetWidth读取并setProperty写入变量。
-
应开启硬件加速、启用MediaFoundation解码、配置MediaSource支持硬件格式、禁用软件回退策略并更新GPU驱动。具体包括:浏览器开启硬件加速并重启;Windows下添加启动参数启用HEVC与硬件密钥系统;MediaSource校验并匹配硬件支持的MIME类型;启用chrome://flags相关选项;检查chrome://gpu中VideoDecode为Hardwareaccelerated。
-
Fetch本身不支持直接设置超时时间,但可通过AbortController配合Promise.race实现可控超时机制:创建controller并传入signal,超时调用abort()触发AbortError,再用Promise.race竞态fetch与定时reject的Promise。
-
在JavaScript中,函数参数仅是占位符名称,无法从形参名本身判断其是否为函数;需通过运行时类型检测(如typeof)或借助TypeScript实现静态类型约束。
-
实现页面平滑滚动主要有两种方式:一是使用JavaScript的scrollIntoView({behavior:'smooth'})方法,简单高效,适用于大多数现代浏览器;二是结合requestAnimationFrame与window.scrollTo()手动实现,可自定义滚动速度、缓动曲线及回调函数,适合需要精细控制的场景。2.CSS的scroll-behavior:smooth属性能全局启用平滑滚动,代码简洁且性能好,但缺乏对滚动过程的控制能力,无法处理复杂逻辑如偏移调整或执行回调,而JavaScr
-
微信各端存在预加载、localStorage失效、AudioContext限制及CSS动画异常等兼容性问题,需分别采用轮询+MutationObserver、localStorage探测降级、手势触发音频、setTimeout检测样式等方案适配。
-
Array.prototype.concat()不直接导致内存溢出,但在大数组合并时因需分配连续内存而放大LOH碎片化风险;其危险性源于后续操作(如flat、JSON.stringify)触发隐式深拷贝或临时对象分配。
-
用相同name属性使多个checkbox构成一组,提交时同名参数多次发送,后端需按语言特性正确解析为数组(如PHP自动转数组、Express需urlencodedextended:true、Flask用getlist)。
-
flex-wrap+flex-basis是响应式图片排列的核心组合,需配合min-width:0、box-sizing:border-box及各断点显式声明display:flex和flex-wrap才能可靠生效。
-
直接用transform:skew()做悬停摇晃易翻车,因其本质是沿坐标轴剪切而非旋转,导致图标被“拉斜”而非自然摆动;纯skewX/Y切换视觉抽搐,需配合transform-origin、微位移及cubic-bezier回弹曲线才接近物理摇晃。
-
flex布局中子元素height:100%无效主因是父容器缺显式高度;应优先用flex:1实现自适应高度,需确保父容器有高度基准(如100vh),并避免与height混用。
-
核心是判断变量是否被重新赋值:若binding.constant===true且referencePaths中无跨作用域赋值,则转const;否则转let;需跳过catch、for循环声明等特殊上下文,并用t.variableDeclaration构造新节点替换,避免直接修改只读AST。
-
flex容器overflow:hidden无效的直接原因是容器未设width或max-width,导致浏览器无法确定溢出边界;必须显式设置尺寸约束(如max-width:400px)并确保overflow作用于容器而非子项。
-
Webpack中CSS不生效的根本原因是loader顺序错误或配置位置不当,正确顺序应为['style-loader','css-loader'],且需避免与mini-css-extract-plugin共存、升级style-loader至3.3.0+以兼容Webpack5。