-
CSSGrid的repeat(auto-fit,minmax())可自动调整列数,无需媒体查询;minmax(280px,1fr)设定单列最小宽度与弹性分配,auto-fit收缩空轨道,适配不同屏幕。
-
submit事件用于表单提交前整体校验与阻断,必须监听form元素;change事件在控件值变更并失焦后触发,仅反映最终值变化,不参与提交流程,需单独监听控件。
-
inputtype="date"点击无反应是因旧版Safari、安卓WebView等不支持而降级为文本框;需用JS检测el.type==='date'确认支持,设value须为YYYY-MM-DD格式且元素已挂载。
-
后代选择器通过空格分隔选择器,选中嵌套在父元素内的任意层级子元素,如divp{color:blue}会匹配div内所有p元素,常用于限定容器内样式;需避免过度嵌套,推荐结合类名简化,且区别于仅选直接子元素的子选择器(>),掌握它可精准控制局部样式。
-
JavaScript读写分离是避免LayoutThrashing最有效手段,即先集中读取offsetHeight等触发强制同步布局的属性,再集中执行style修改,确保重排最多1次。
-
使用Flexbox布局替代传统height控制,通过display:flex+max-height+height:auto组合,让容器自动收缩至内容高度(但不超过最大值),同时确保内部滚动区域正常工作。
-
animation-fill-mode无none值,其合法值为none、forwards、backwards、both等;none表示动画不冻结起始/结束帧,播放结束即恢复元素原有样式。
-
支配树中“顶级对象”指无其他Java对象支配它的根级持有者,即所有GCRoots到该对象的路径均不经过其他Java对象,其RetainedSize通常最大,最可能是内存泄漏源头。
-
直接查DevToolsStyles面板中带删除线的样式,悬停可见覆盖来源;权重按四元组(a,b,c,d)逐位比较,不进位相加,a为内联、b为ID、c为类/伪类、d为标签数。
-
HTML离线跳转空白主因是ServiceWorker未针对destination==='document'请求单独拦截并返回缓存的index.html;SPA需统一fallback至index.html,且HTML与JS资源必须同步缓存、版本一致,并启用skipWaiting()和clients.claim()确保SW及时生效。
-
用<video>嵌入本地MP4需确保路径正确、编码为H.264+AAC、添加controls属性;YouTube必须用<iframe>嵌入;poster与preload="metadata"配合可优化首屏体验;Safari播放失败多因MIME类型或moovbox位置问题。
-
HTML中无原生长按事件,需用touchstart/touchend+setTimeout模拟;移动端优先touchstart,PC端需防mousemove误触;pointerdown更统一但兼容性受限,且需兜底清理。
-
用::before给段落加装饰线需三要素:content非空、父元素设position:relative、伪元素设display:block;常用写法为p{position:relative}与p::before{content:"";display:block;width:60px;height:2px;background:#333;margin-bottom:0.5em}。
-
断点续传核心是跳过已传切片,需前后端协同:用File.slice()按ceil(file.size/shardSize)分片,end设为file.size防丢末尾;以文件MD5为唯一fileId查服务端已传索引;localStorage存进度须防隐私模式、多标签冲突及容量超限。
-
gitinit后需先用gitremoteaddorigin<url>绑定远程仓库,再gitpush;未配.gitignore会导致node_modules等误提交;SSH推送失败需检查密钥配置;push不更新线上页面因缺少自动部署,需确认托管平台设置。