关键在精配charset、viewport和资源提示:charset须为head首字符,viewport紧随其后且参数简洁,preload仅限首屏强依赖资源,dns-prefetch限2个域名,删弃无效iOS/Windows专属meta。

加快页面加载,关键不在多加 meta,而在精配、严序、慎用。多数性能瓶颈其实藏在 <head> 开头几十行里,尤其 charset、viewport 和资源提示的写法与位置。
charset 必须是 head 的第一个字符
它不能前面有注释、空格、换行,也不能被构建工具意外挪动。旧版 Android WebView 一旦跳过识别,就会用 GBK 解析后续 HTML —— 中文变方块、class 名被截断、样式全乱。检查构建后源码,确保 <meta charset="UTF-8"> 紧贴 <head> 开始,中间零字符。
viewport 要紧随 charset 之后,且参数干净
把 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 放在 charset 下一行。别写 maximum-scale=1.0 或 user-scalable=no,这会让 iOS Safari 失效双击放大,也通不过可访问性审查。更别用 width=375 这类固定值,高 DPR 安卓设备会误判分辨率,文字发虚。
preload 与 dns-prefetch 要克制,不混用
只对首屏强依赖资源做 preload:关键 CSS(as="style")、LCP 图片(as="image")、核心字体(as="font" + crossorigin)。不要给 JS preload,除非它是 async 加载且无副作用。dns-prefetch 仅用于最多 2 个第三方静态资源域名(如 cdn.example.com),再多会触发浏览器并发限制,反而拖慢 DNS 查询。
立即学习“前端免费学习笔记(深入)”;
删掉没用的 iOS/Windows 专属 meta
apple-mobile-web-app-capable、apple-mobile-web-app-status-bar-style、msapplication-TileColor 这类标签实际收益极低,现代 PWA 已通过 Web App Manifest 实现更可靠控制。保留它们只会增加解析负担和潜在兼容风险,直接移除。
不复杂但容易忽略。



















