-
垂直居中用align-items:center(flex)或place-items:center(grid);父容器须设display:flex/grid和明确高度(如min-height:100vh),否则居中失效。
-
懒加载的核心目的是提升网页初始加载速度和用户体验,减少不必要的资源消耗,其最推荐的实现方式是结合HTML的loading="lazy"属性和JavaScript的IntersectionObserverAPI。对于图片和iframe,可直接使用原生loading="lazy"实现高效懒加载;对于背景图、视频、自定义组件等复杂场景,则应采用IntersectionObserverAPI异步监听元素进入视口的时机,动态加载资源,避免主线程阻塞。懒加载解决了传统全量加载导致的首屏渲染慢、带宽浪费、服务器压力大等
-
事件委托利用事件冒泡机制,在父元素上统一处理子元素事件,减少监听器数量,提升性能。它解决了大量动态子元素的事件绑定问题,避免频繁增删监听器,同时让代码更集中、易维护。捕获阶段可用于全局拦截或绕过stopPropagation限制,但多数场景使用冒泡。跨组件委托需注意选择合适的根节点、合理使用event.target和closest()、避免stopPropagation滥用,并在ShadowDOM中通过composedPath()获取真实目标。
-
JavaScript函数本质是行为契约而非功能封装,需明确“谁调用、给什么、要什么”三问,确保无隐式依赖、参数清晰、返回稳定;纯函数优先,副作用集中,模块化重在依赖可见而非简单拆文件。
-
作用域链是函数创建时确定的词法环境嵌套引用链,由[[Environment]]槽静态绑定形成;变量查找沿此链逐级向上访问EnvironmentRecord,遵循词法作用域规则,与调用位置无关。
-
这是CSS规范定义的margin垂直合并行为:相邻、嵌套或空块级元素的上下外边距会取最大值而非相加,如20px与30px合并为30px;典型场景包括兄弟元素相邻、父子塌陷及空元素自身合并。
-
JavaScript垃圾回收由引擎自动执行,依据可达性判断对象是否可回收;V8采用Scavenge(新生代)和Mark-Sweep/Mark-Compact(老生代)算法;隐式引用如未移除的事件监听器、未清除的定时器、DOM缓存等易致内存泄漏。
-
Canvas图像处理核心是手动操作ImageData.data数组;跨域导致getImageData报错需服务端配CORS或本地启服务;单像素修改用index=(ywidth+x)4定位;drawImage与globalCompositeOperation顺序决定合成效果;性能瓶颈在getImageData/putImageData,应避免动画中频繁调用。
-
requestAnimationFrame适用于需与屏幕刷新率同步的连续视觉更新,如滚动视差、Canvas绘图等;一次性动画应优先用CSStransition。其核心是递归调用加时间戳控制,使用浏览器提供的高精度timestamp,避免Date.now()。
-
HTML中显示“看得见”的空格需用 实体( ),或使用<pre>标签保留空白符,或通过CSSwhite-space属性(如pre-wrap)精细控制。
-
crossOrigin属性用于设置HTMLvideo标签加载跨域视频时的CORS策略,其值为anonymous或use-credentials,需前后端配合实现,前端设置该属性且后端返回对应CORS头,才能避免跨域安全限制,支持canvas绘制和像素读取等操作。
-
可通过CSS的background和border属性实现背景色、背景图及边框效果:一、用background-color设纯色背景,支持十六进制、RGB、rgba;二、用background-image设背景图,配合repeat和position控制平铺与定位;三、用border-radius设圆角;四、用border简写或单独属性设边框样式;五、组合使用并用background-clip、background-origin精确控制绘制区域。
-
左右结构对不齐主因是box-sizing、padding、border或浮动残留,应优先用Flex/Grid布局;Flex通过align-items控制对齐,Grid用align-items/justify-items精确调控;务必全局设box-sizing:border-box并用开发者工具排查真实尺寸差异。
-
视差动画延迟通常由CSS中不加区分的transition:all或冗余的transition-duration引起,尤其当它作用于background-position等高频更新属性时,会严重拖慢动画帧率。本文提供精准修复方案:仅对filter等必要属性启用过渡,禁用backgroundPosition的过渡效果,并优化CSS结构与类命名。
-
:focus颜色不生效主因是样式被覆盖或UA默认样式干扰,需检查计算样式、清除outline、提高选择器权重;:valid/:invalid依赖HTML5验证属性触发;:placeholder-shown用于精准区分空/非空状态。