-
标签语句本身不执行任何操作,仅用于为语句命名以供break或continue精确跳转非最近一层循环或代码块;标签由标识符加冒号构成,须紧贴目标语句前且仅适用于声明、块、循环或switch语句。
-
JavaScript中条件语句用于根据条件执行不同代码块,主要使用if...else和switch。if...else适用于布尔判断和多条件分支,如年龄判断和成绩分级;switch则适合变量匹配多个固定值,如星期几的判断,代码更清晰。选择依据是:复杂条件或范围判断用if...else,固定值匹配用switch。break在switch中防止穿透,需注意使用。
-
@import不推荐使用,因其同步阻塞加载、无法被预加载器识别、导致串行瀑布请求,并存在旧版IE兼容问题及构建工具支持不足等缺陷。
-
CSS的:not()仅支持单个简单选择器,无法否定层级关系;需用作用域类、all:unset、BEM命名或JS判断祖先来实现精准控制。
-
页码必须用CSS@page规则配合counter(page)实现,Puppeteer需启用displayHeaderFooter:true,且@page必须位于顶层CSS;分节页码需结合counter-reset与counter-increment控制。
-
text-align:justify仅对块级文本容器(如p、div)生效,需内容至少两行;对内联元素、替换元素、单行文本、pre及flex/grid容器无效;中文需额外处理才可两端对齐。
-
Map的键支持对象/函数且不转字符串,而Object会将对象键转为"[objectObject]"导致覆盖;Map用SameValueZero比较保留引用,遍历严格按插入顺序,提供size、has()等确定性API,不可用中括号或点号访问。
-
本文介绍一种灵活、可复用的JavaScript方法,将数组中特定学科(如Chemistry)的元素按固定间隔(如每3个位置插入1个)重新分布,其余元素依次填充空位,避免硬编码和嵌套循环陷阱。
-
用SassMixin定义关键帧动画需封装@keyframes命名与行为,通过@content注入动态帧(支持from/to或多段百分比),配合参数控制时长、缓动等,兼顾语义性、复用性与可维护性。
-
外边距塌陷是CSS规范定义的垂直相邻块级元素margin合并行为,发生在父子或兄弟块间;行内、浮动、绝对定位元素不参与;可用BFC(如display:flow-root)或border/padding/flex等轻量方式解决。
-
使用<nav>标签构建语义化导航,结合CSS美化与JavaScript实现响应式交互,并通过ARIA属性和描述性链接文本提升可访问性与SEO。
-
必须在目标元素dragover事件中调用e.preventDefault(),否则drop不会触发;动态渲染需每次重新绑定;Safari需设dataTransfer.effectAllowed="move";应传application/json结构化数据而非text/plain;避免dragstart中操作DOM;移动端需pointer事件fallback;嵌套列表需用closest判断落点并设子元素draggable="false"。
-
position:fixed偏移因祖先元素含transform/perspective/filter导致降级定位;右下角应使用clamp()和env(safe-area-inset-bottom)响应式适配;弹窗需与悬浮球同级挂载body并设更高z-index。
-
ChromeDevToolsPerformance面板抓问题需录制3–5秒复现卡顿的操作,重点关注红色长条(JS执行过久)、频繁紫/绿色块(强制同步布局)、大量灰色ScriptEvaluation(未节流回调);内存泄漏用Heapsnapshot对比DetachedDOM树增长;requestIdleCallback适用于可中断低优先级任务,WebWorker用于CPU密集型纯计算。
-
HTML5视频通过<video>标签原生实现音视频播放,依赖浏览器解码能力、资源加载机制及DOMAPI控制;其工作原理涵盖标签解析与媒体源绑定、缓冲机制、解码渲染流水线、事件驱动控制及编码兼容性处理。