-
Sticky定位在表格元素中失效,因<table>、<tbody>、<tr>等不支持sticky,浏览器直接忽略;正确做法是用div模拟表格并设sticky,或采用双层table、CSSGrid、第三方库等替代方案。
-
可通过监听fullscreenchange事件并检查document.fullscreenElement来准确判断全屏状态,据此动态调整UI;全屏API须在用户手势中调用,退出时用document.exitFullscreen()并处理Promise;CSS可配合:fullscreen伪类和class切换实现响应式适配。
-
:nth-child(3n+1)选择DOM序号为1、4、7…的元素,与视觉排列无关;其生效需满足HTML线性、列数固定、无隐藏/插入元素等条件,否则易错位;可靠方案是用Grid定位而非依赖序号。
-
transform:rotate()单独使用无动画效果,需配合transition或@keyframes;hover中直接写会瞬变,须加transition:transform0.3sease并定义起始态;@keyframes旋转进入需明确from/to、单位、forwards及transform-origin。
-
JavaScript优化页面加载速度需减少体积、提升解析执行效率、合理控制资源加载时机;核心手段包括Terser/SWC/esbuild压缩、动态导入与代码分割、type="module"启用、defer/async策略及精准polyfill。
-
:has()是目前唯一能根据后代内容反向选择父级的原生CSS方案,但仅支持可选中子元素(不能匹配纯文本节点),需配合语义class或data属性使用;文本匹配应优先通过JavaScript添加class或直接用属性选择器(如[data-action="submit"])实现,避免依赖易变的文本内容。
-
gap属性仅对display:grid或flex容器生效,若父元素为inline-grid或子项被float/absolute干扰则失效;它不替代margin,且IE等旧浏览器需用grid-gap兜底。
-
本文介绍使用JavaScript类名切换配合CSStransform:scaleY()实现div元素的平滑垂直展开/收起效果,适用于隐藏内容(如SVG容器或子模块)的交互式显示控制。
-
本文详解如何基于CanvasAPI,利用对象数组高效创建、更新和渲染多个粒子(圆形形状),并内置物理属性(速度、加速度、摩擦力、生命周期)以支持真实碰撞模拟,彻底告别重复手写绘图代码。
-
CDN选型应优先确保源站Cache-Control可自定义,否则CDN无法缓存;静态资源需显式设置public/max-age/immutable;URL哈希优于查询参数;需验证边缘节点实际覆盖;HTTP/2推送已废弃,改用preload或preconnect。
-
UnoCSS配置更简洁的根本原因是属性化模式(Attributify)将class属性视为可解析DSL,无需预定义类名集合;它默认支持动态CSS生成,仅需配置shortcuts、rules和attributifyOptions等边界控制与语义映射。
-
triggerRef专门用于手动触发shallowRef的响应式更新,因其只监听.value赋值而不追踪内部属性变化;修改userInfo.value.age后需调用triggerRef(userInfo)才能刷新视图,不可传userInfo.value或普通对象。
-
:empty仅匹配完全无子节点的元素,因换行、空格、注释等不可见内容导致常见失效;验证需检查childNodes.length为0或DevTools中样式是否高亮。
-
border-radius动画失效主因是起止值类型不一致或不可插值,须统一用数值单位且四角写法匹配;应避免auto等非数值值,优选class切换而非JS直改,并注意Safari兼容性问题。
-
多个@keyframes可共存但元素仅能应用一个animation-name;需用逗号分隔多个名称实现叠加,且各子属性项数必须严格对应;transform函数顺序影响最终效果,合并写入同一句可实现复杂原子动画。