-
display:none使元素脱离文档流且不占空间,布局重排;visibility:hidden保留空间,布局不变,仅视觉隐藏。
-
最稳比例方案是用grid的fr单位,如grid-template-columns:3fr2fr;Flex布局则用flex:310和flex:210;响应式用repeat(auto-fit,minmax(300px,1fr));辅以min-width:0和aspect-ratio保障子项不溢出、高度可控。
-
memoize是一种手动实现的缓存策略,用Map存储输入与输出,提升纯函数(尤其递归)性能;手写需支持可序列化参数、保持this上下文,JSON.stringify有局限,Map可避免键冲突。
-
static为默认定位,不脱离文档流,不支持偏移;2.relative相对自身原位置偏移,仍占文档流空间;3.absolute脱离文档流,相对于最近已定位祖先定位;4.fixed相对于视口固定,不随滚动移动;5.sticky在滚动到阈值时由relative变为fixed,常用于表头吸附。
-
柯里化是将多参数函数转为单参数函数链的技术,通过闭包保存已传参数实现分步调用;如add(1)(2)(3)等价于add(1,2,3),支持暂停、复用与组合;通用实现依赖fn.length判断参数是否齐备,不足则递归返回新函数。
-
JavaScript通过arguments对象、类型判断或分发机制模拟函数重载,实现依据参数数量、类型执行不同逻辑,如add函数根据参数个数返回不同结果,greet函数依据类型区分调用方式,multiply利用映射支持多类型组合,提升灵活性与扩展性。
-
<p>用min-height是解决内容区高度不够最直接安全的方式,它设最小高度且允许内容增多时自动延展;height则强制固定易致溢出。常用值有300px、100vh、calc(100vh-80px),配合flex布局时需父容器设column和100vh,子项用flex:1加min-height兜底;注意百分比需父元素有明确高度,推荐box-sizing:border-box。</p>
-
JavaScript性能优化核心是减少主线程阻塞、降低内存压力、提升渲染响应;聚焦加载(defer/import()/preload)、执行(节流/缓存/DOM优化)、内存(及时清理/DocumentFragment/虚拟滚动)及进阶减负(WebWorkers/requestIdleCallback/对象池)。
-
图片在flex容器中垂直错位因inline默认基线对齐,加vertical-align或设display:block可修复;响应式需用aspect-ratio或padding-top保比例;grid布局应约束图片容器高度并慎用align-self:stretch;统一box-sizing、用clamp控制padding、检查font-size对rem的影响。
-
JavaScript振动API是浏览器原生接口,用于控制移动设备振动,需用户手势触发,支持数字或数组参数,兼容性需检测且受iOS/Android系统限制。
-
video标签需用source多格式fallback(如mp4+webm)并设muted、playsinline才能移动端自动播放;poster失效常因路径错、尺寸不匹配或MIME类型错误;play()须在用户手势中调用且处理跨域与Promise异常。
-
使用HTML5download属性可实现点击下载而非预览,需同源URL;跨域或动态内容可用Base64dataURL或Blob对象方案;CSS美化提升体验;服务端配合Content-Disposition响应头可强制下载。
-
从项目初期就应明确主渲染进程职责分离,主进程避免阻塞操作,通过contextBridge安全暴露API;多窗口场景下使用IPC通信并结合Redux等工具统一状态管理;优化启动速度需预加载主题、延迟加载模块、压缩资源;内存方面要监听窗口生命周期清理资源,定期监控堆内存,控制并发缓存,确保应用轻快稳定。
-
缩放与旋转无法同时播放是因多个transform被覆盖,需将scale和rotate写入同一animation的transform中,如:transform:scale(1)rotate(0deg);或通过父子元素分离实现独立动画控制。
-
猎豹浏览器无法真正重置HTML5环境,因其基于已停更的Chromium49–53内核,缺失chrome://flags、WebGL2.0、MediaRecorder等现代API支持,且无系统级重载机制;唯一有效方式是强制结束进程并清除Cache/GPUCache后重启。