浏览器对 HTML5 的基础结构容忍度其实很高,但省略关键标签会触发怪异模式或解析异常——比如 缺失时,IE 和旧版 Edge 直接降级到 Quirks Mode;、、 虽然理论上可省略(HTML5 规范允许),但实际中 里没写 就可能乱码, 缺失会让 CSS 选择器 body > div 失效。
实操建议:
必须写 ,顶格第一行,前面不能有任何字符(包括空格和注释)
放在 最开头,否则部分浏览器读到非 ASCII 字符就直接卡住
显式写出 、、,别依赖自动补全——编辑器、构建工具、服务端模板都可能干扰解析
用 标签,哪怕内容是临时的;没有它,某些 SEO 工具或调试面板会报 warning
用 section、article 这些语义标签真能提升 SEO 吗
不能。Google 官方多次说明:纯语义标签本身不参与排名计算。但它影响间接因素——比如屏幕阅读器更准确定位内容,用户停留时间变长;结构清晰的 DOM 更容易被爬虫提取正文,减少误抓导航/广告区块。
实操建议:
只用于「可独立分发、复用」的内容,比如博客正文、新闻条目;列表页里的每条摘要不是 ,而是 或
是逻辑分组,不是视觉分块;一个页面里不要只为了加边框/内边距就套
必须包裹完整导航链路,如果只放一个“返回首页”链接,不如用
别嵌套过度: 是合法但罕见的,多数场景用 更自然
本地打开 HTML 文件为什么 JS 不加载图片或发不了 fetch 请求
因为浏览器默认启用 CORS 策略,而 file:// 协议下,所有资源请求都被视为跨源——连同目录下的 ./images/logo.png 和 fetch('./api/data.json') 都会被拦截,控制台报错 Blocked by CORS policy: No 'Access-Control-Allow-Origin' header。