-
必须用语义化标签(如<nav><main><aside>)而非div,因其承载区域意图、支撑无障碍与SEO;布局宜用显式grid而非grid-template-areas防命名冲突;卡片内元素用flex对齐;编辑态应复用节点而非替换DOM。
-
justify-self用于Grid布局中控制子元素在行内轴(横轴)的对齐,如center、start等;align-self在Grid和Flexbox中均有效,控制块轴(纵轴)对齐,如center、flex-start。前者仅适用于Grid,后者通用,优先级高于父容器设置。
-
for循环用于已知次数的重复执行,语法为for(初始化;条件;更新){循环体},如for(leti=1;i<=5;i++)console.log(i)可打印1到5。
-
用computed实现列表搜索过滤的核心是将原始数据和搜索关键词作为响应式依赖,Vue自动追踪变化并重新计算结果;搜索关键词需用ref或data声明为响应式,computed中通过filter返回新数组,建议统一转小写比对,多字段搜索用||连接,防抖须在事件中处理而非computed内。
-
LongTasksAPI仅记录≥50ms的主线程任务,不能直接检测用户感知的卡顿;需结合≥1s耗时、帧率丢失或输入延迟等指标综合判断,且存在Safari不支持、attribution为空、漏报连续短任务等局限。
-
直接给.login-box容器设background-image最稳妥,需同时设置background-size:cover、background-position:center、background-repeat:no-repeat,并加background-color降级;配遮罩层::before提升文字可读性,用min-height:100vh保障响应式高度,高DPR屏需提供@2x图。
-
Canvas本身无响应式绑定机制,性能问题多源于误用:在requestAnimationFrame中频繁读取布局属性、调用getImageData、动态访问canvas尺寸或遍历稀疏数组,引发强制同步布局与全帧内存拷贝。
-
JSON本身不支持Map和Set,因其仅定义六种原生类型;直接序列化会静默返回{}或[],需手动转为数组再重建。
-
函数组合(Compose)是将多个函数按右到左顺序串联执行,前一个输出作为后一个输入,本质为数学复合f(g(x));其核心实现用reduceRight逆序调用函数数组,确保正确执行顺序。
-
theme-color在iOS上完全无效,因Safari明确不支持该标签;iOS状态栏变色实际依赖apple-mobile-web-app-status-bar-style或PWAmanifest中的status_bar配置。
-
隐式列宽不可控是因为默认grid-auto-columns为auto,导致列宽随内容变化;显式设置grid-auto-columns(如1fr、minmax(200px,1fr)或250px)可统一控制所有隐式列宽度,使其可预期、可维护。
-
浮动布局中响应式隐藏某列有三种方式:一是用display:none(最简,彻底移除元素);二是float:none+width:100%(保留结构,退化为块级排列);三是切换为flex布局(推荐长期方案,用display:none真正退出布局)。
-
JavaScript数据绑定核心是让数据变化自动触发视图更新;需区分响应式数据流与模板语法的双向绑定,Proxy实现依赖收集与触发,但仅代理第一层且不兼容IE11。
-
根本原因是404路由被提前注册在静态路由表中,刷新时动态路由未加载即被匹配;应初始仅含免权限路由,登录后按序注入基础路由→动态路由→404兜底路由。
-
HTML静态站点自动部署的核心是将gitpush与文件上线串联为无人值守流水线,首选GitHubActions+GitHubPages零成本方案,需正确配置工作流路径、分支监听及发布源,部署后链接见仓库Settings→Pages。