-
scroll-timeline需先定义@scroll-timeline规则再通过animation-timeline关联,否则transform:scale()不响应滚动;必须指定source、start/end值,显式写出完整transform函数,注意兼容性与渲染层优化。
-
JSON操作核心是JSON.parse()和JSON.stringify(),需防范非字符串输入、BOM字符、循环引用、特殊值丢失等问题,replacer/reviver是安全扩展点,严格遵循JSON规范(双引号、无尾逗号)。
-
BroadcastChannel通过同名频道实现同源页面间实时通信,支持结构化克隆数据传输,相比localStorage更高效、语义更清晰,适用于多标签页状态同步。
-
HTML5多语言网站手动切换语言有五种方式:一、用data属性+JS动态替换文本;二、动态加载JSON语言文件;三、利用lang属性配合CSS伪类;四、基于URL参数自动识别语言;五、用Intl.Locale结合data-locale语义化标记。
-
伪类匹配元素状态(如:hover),伪元素匹配DOM外虚拟内容(如::before);::before必须设content才显示,:hover::before合法而::before:hover非法,transition须加在触发状态的父元素上。
-
直接引入bootstrap.min.css会拖慢首屏,因其含200KB+全量样式,即使只用button/grid,浏览器仍需下载解析全部规则,阻塞关键渲染路径;应改用Sass源码按需导入functions/variables/mixins及所需组件。
-
HTML页眉应使用<header>而非<head>标签,因<head>仅存放元信息且不渲染,而<header>是语义化页面顶部区域的容器,须置于<body>内并合理嵌套结构化内容。
-
<marquee>标签虽已废弃但浏览器仍支持,适合教学演示;现代标准方案是CSS@keyframes配合transform:translateX()实现平滑滚动;推荐CodePen进行实时调试;卡顿问题多源于渲染层设置不当,应避免will-change、opacity等干扰属性。
-
JavaScript不支持传统函数重载,但可通过arguments.length或剩余参数...args按参数个数分发逻辑实现模拟重载,如add函数支持0/1/2/≥3个参数的不同行为,并可封装通用重载调度器。
-
猎豹浏览器的“硬件加速”指启用Chromium内核的GPU渲染通道,统一控制canvas、video解码、CSS合成、WebGL等所有HTML5GPU功能。开启路径:头像→选项→更多设置→底部“其他”→勾选“开启硬件加速”并重启;需访问chrome://gpu验证Canvas、Compositing、VideoDecode、WebGL四项均为Hardwareaccelerated才真正生效。
-
符合HTML5规范的网页需:一、用<!DOCTYPEhtml>和<htmllang="zh-CN">等结构;二、以<header><nav><main><article><footer>替代div;三、用<video><audio>及<source>嵌入媒体并设备用文本;四、用type="email"/required等增强表单;五、正确使用Canvas与SVG绘图。
-
Fetch默认不处理HTTP错误状态码,需手动检查response.ok;Axios默认将4xx/5xx视为错误并reject,且内置超时、拦截器、自动JSON序列化等能力。
-
ThemeProvider只接收名为theme的纯对象prop,需用新引用触发更新,避免Object.freeze或深层嵌套;styled组件须直接解构theme参数以响应变化,多层嵌套时浅合并覆盖同名key。
-
subgrid不自动继承父级轨道,必须显式声明grid-template-rows:subgrid或grid-template-columns:subgrid;仅对直接子元素生效,不跨级穿透,且依赖父容器已定义明确轨道,浏览器兼容性有限,需降级处理。
-
真正可读的文章页需控制视线移动成本:行宽≤65ch、行高1.5–1.6、段间距>行高;标题用font-weight:600+渐进字号+足够下边距;图片/引用/代码块须独立呼吸空间;移动端强制最小字号、适配窄列与触控区域。