-
可使用CSS多列布局、Flexbox或Grid实现HTML5列表项并行排列:多列布局用column-count自动分列;Flexbox用display:flex+flex-wrap换行;Grid用grid-template-columns精准控列;需注意浏览器兼容性与可访问性。
-
现代JavaScript引擎已对点号(.)和方括号([])两种属性访问方式做了深度优化,二者在实际运行中性能几乎无差异;选择应基于语义需求(静态/动态)而非性能考量。
-
打印HTML页面时,可以通过CSS的page-break属性、JavaScript动态插入分页符、CSS的page-break-inside属性以及调整HTML结构来处理分页问题。1.使用CSS的page-break属性控制元素前后插入分页符。2.通过JavaScript动态插入分页符,适用于需要在特定位置分页的情况。3.利用CSS的page-break-inside属性避免内容在不恰当的位置被截断。4.调整HTML结构,在需要的地方插入分页元素以优化打印效果。通过这些方法,可以显著改善打印输出的质量和用
-
ES6模块与CommonJS在语法、加载机制和使用场景上存在差异。1.语法方面,ES6使用静态的import/export,支持命名和默认导出;CommonJS使用动态的module.exports和require,常见于Node.js。2.加载机制上,ES6模块为编译时加载,利于静态分析和tree-shaking;CommonJS为运行时加载,支持条件引入。3.浏览器原生支持ES6模块(通过type="module"),而CommonJS主要用于Node.js环境,新版Node.js也支持ES6模块。4
-
直接用window.scrollTo在React/Vue中跳不准,因目标元素可能未渲染、SSR与客户端DOM不一致或异步组件未挂载;应延后执行、用getBoundingClientRect计算位置,并注意兼容性与样式影响。
-
JavaScript默认参数是在函数定义时为形参指定的初始值,仅当调用时传入undefined才生效;支持表达式、函数调用及前置参数引用,且每次调用重新求值。
-
侧边栏划入动画应使用transform:translateX()而非left或margin,以避免重排、启用GPU加速;初始设为translateX(-100%),配合transition和will-change:transform,贝塞尔曲线cubic-bezier(0.34,1.56,0.64,1)因y1>1实现超调弹性效果。
-
必须写animation:nameauto,因为auto使动画时长由滚动时间线动态决定,若设为固定时长(如2s)则与滚动脱节,Chrome115+支持,Firefox需开启实验标志。
-
URLSearchParams是现代浏览器解析URL查询参数最简洁可靠的方式,支持自动编解码、get/getAll/has等方法,但IE不支持,需polyfill;window.location.search含开头?,可直接传入。
-
ContentIndexingAPI仅注册已缓存URL供系统界面展示,不负责缓存或验证;离线可用性取决于ServiceWorker是否已精确缓存对应路径并在fetch中正确响应导航请求。
-
ShadowDOM中font-family不继承是设计使然,因仅部分可继承属性穿透边界,需通过:host{font-family:inherit}或adoptedStyleSheets显式继承。
-
Canvas绘图需先获取2D上下文对象:用document.getElementById()获取<canvas>元素,再调用getContext('2d');漏此步则绘图静默失败。fillRect画实心矩形,strokeRect仅描边,均以左上角为坐标原点;路径绘制须beginPath→moveTo/lineTo→stroke/fill,缺beginPath会导致路径叠加;clearRect仅清像素,不重置状态,彻底重置可用canvas.width=canvas.width。
-
微任务不会直接阻塞渲染,但会延迟渲染时机。因为微任务在当前宏任务执行后、渲染前执行,若微任务队列过长或执行复杂计算,将占用主线程,推迟浏览器更新屏幕的机会,导致页面卡顿。事件循环中,主线程执行完同步代码后优先处理所有微任务,之后才进行渲染和执行下一个宏任务。若微任务链过长,会持续推迟渲染,造成视觉上的不流畅。优化方式包括:1.拆分任务,使用setTimeout或requestAnimationFrame分批执行;2.合理使用Promise,避免嵌套与同步计算;3.将耗时任务移至WebWorkers中执行,
-
HTML树形结构与层级展示不冲突,但“树形”需靠DOM层级+CSS+JS协同实现;常见问题包括状态不同步、样式覆盖、SSRhydration失败及details/summary无法联动控制等。
-
CSSGrid注册页布局需语义化HTML、两列式网格对齐标签与输入框,并用display:contents使子元素直参网格排列,小屏时通过媒体查询转单列。