-
<header>是语义化元素,表示介绍性或导航性内容,可用于页面、<article>或<section>内部;仅当含标题、导航、作者信息等时使用,纯样式布局应选<div>;禁止嵌套或误用于页脚;<hgroup>已废弃。
-
flex:1等价于flex:110,强制以flex-basis:0为基准分配空间,忽略内容宽度;若需保留内容尺寸,应显式使用flex:11auto或fit-content,并注意IE11对auto的异常解析。
-
使用rel="preload"可提前下载关键CSS而不阻塞渲染,通过as="style"指定类型并配合onload切换rel属性实现预加载与应用,提升首屏速度。
-
用:root而不是普通class定义变量,因其提供全局、可继承、可动态修改的CSS自定义属性,支持媒体查询和主题切换,且仅:root伪类有效;命名需语义化、组织需模块化、JS修改应直接操作document.documentElement.style。
-
Firefox50之前referrerpolicy="same-origin"无效,因解析器不识别该属性,退回到no-referrer-when-downgrade;50版起才支持。
-
根本原因是渐变背景与文字颜色对比度不足(低于4.5:1),导致文字陷于暗区或亮区;应主动用background-blend-mode、伪元素+backdrop-filter等方案提升可读性,并通过工具校验WCAG对比度。
-
Materialize卡片无阴影通常因CSS未加载或HTML结构错误:需确认引入了正确版本的MaterializeCSS文件,检查卡片元素是否使用小写class="card"并符合标准结构,排除CSS冲突或重置影响。
-
最简可用加载动画需满足:名字唯一,且含from和to(或0%/100%);绑定到真实元素并确保其可见、有尺寸;用transform:rotate()而非left/top;JS控制启停以对齐请求节奏。
-
JavaScript表单验证是在提交前实时检查输入是否符合要求,如邮箱格式、密码长度、必填项等,响应快但仅为体验优化,安全须依赖后端重复校验。
-
visibility:hidden保留布局、禁用交互且不被读屏软件识别,opacity:0保留布局和交互、支持过渡动画但需配合pointer-events:none和aria-hidden才安全。
-
HTML5<audio>仅支持特定容器与编码组合:MP3需MPEG-1LayerIII、WAV限16位PCM、OGG仅Opus/Vorbis、M4A/MP4须AAC-LC或ALAC;浏览器兼容性差异大,需用<source>按优先级fallback并精确声明type,且服务端须配置正确Content-Type、CORS及Range支持。
-
for循环在多数场景下仍是最快选择,因现代引擎深度优化;forEach适合副作用操作但无法中断;map/filter等声明式方法应按需使用,注意性能开销;for...of兼顾可读性与控制力;真正瓶颈常在循环体内操作。
-
元素最终渲染高度=content高度+padding-top+padding-bottom+border-top+border-bottom(标准盒模型),padding独立撑开空间且不受line-height影响。
-
最合理语义化HTML结构是section包裹、每条用article,内含header/main/footer;避免ul/li和role="feed";CSS用block布局+margin-block控制间距;DOM批量操作用DocumentFragment;时间处理需注意时区与Intl.RelativeTimeFormat。
-
需后端在Access-Control-Expose-Headers中暴露X-RateLimit-Reset,前端用Date.parse(response.headers.get('Date'))获取服务端当前时间,再与X-RateLimit-Reset(秒级时间戳×1000)做差计算剩余秒数,避免客户端时钟偏差。