404页面导航需用绝对路径、语义化标签和独立资源。所有链接以/开头,包裹在中;css/js须独立部署,避免路径依赖和嵌套404。

404页面里加导航菜单不是加“链接列表”就完事
直接在 404.html 里写一堆 @#@#@#@#@#@#@#@#@#@0 看似可行,但容易漏掉关键点:路径必须绝对、语义要清晰、不能依赖前端路由。真实部署时,静态 404 页面由 Web 服务器(如 Nginx/Apache)直接返回,history.pushState 或前端路由库(如 React Router 的 <link>)根本不会执行。
用绝对路径写 <a></a>,别信相对路径
相对路径在 404 页面中极易失效。比如用户访问 /blog/post/123 时触发 404,浏览器当前 URL 是那个地址,此时 <a href="about"></a> 会跳转到 /blog/post/about,而不是你想要的 /about。
实操建议:
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
- 所有导航链接都以
/开头,例如:@#@#@#@#@#@#@#@#@#@0、@#@#@#@#@#@#@#@#@#@2 - 避免
@#@#@#@#@#@#@#@#@#@3替代模糊的“联系我们” - 避免纯图标链接(如仅用 ?),至少加
aria-label或隐藏文本:<span class="visually-hidden">首页</span>
要不要加搜索框或返回按钮?看实际流量来源
如果大部分 404 来自站内链接错误(比如 CMS 生成了坏 URL),加一个站内搜索入口很有用;如果来自外部爬虫或拼写错误,返回上一页(history.back())反而容易让用户卡在死循环里。
实操建议:
- 加搜索:用
<form action="/search"></form>,确保后端有/search路由,不要依赖 JavaScript 提交 - 加“返回上一页”:只用原生 JS,且做降级:
<button onclick="if(history.length>1)history.back();else location.href='/';">返回</button> - 不推荐自动跳转(如
meta http-equiv="refresh"),干扰用户操作,还可能被搜索引擎视为误导
最常被忽略的是:404 页面的 CSS 和 JS 必须能独立加载,不能依赖和主站共用的构建产物路径。比如你的主站 JS 在 /assets/main.abc123.js,而 404 页面没走构建流程,就很可能 404 嵌套 404。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










