横向及页脚导航均须用包裹并配aria-label,页脚导航需独立、禁混版权信息;推荐display: flex布局,子容器设flex-wrap或媒体查询适配折行,路径高亮须区分精确/前缀匹配。

横向导航条必须用 包裹,页脚导航也得是独立的
很多人把页脚里的一串链接直接塞进顶部 顶部导航用 HTML 无法自动识别“我在哪”,硬编码 页脚常混排文字链接 + SVG 图标 + 小 logo,用
页脚导航看似简单,真正踩坑的地方都在语义边界和路径判断细节上—— 里,或者用 包裹。同一页面最多 2–3 个 :顶部主导航、页脚快捷链接、面包屑(后者需加 aria-label)。别把版权信息、联系方式、备案号混进去,它们属于 ,不是导航。
display: flex 是横向导航布局的唯一稳解,但页脚导航要慎用 flex-wrap: wrap
display: flex + justify-content: space-around 对齐,没问题;页脚导航如果项数多(比如“隐私政策|用户协议|联系我们|加入我们|招聘信息”),直接设 flex-wrap: wrap 容易在中等屏幕(768–992px)下折成两行且不对齐。更可靠的做法是:
的子 设 display: flex,但不设 flex-wrap
max-width: 768px 时切为 flex-direction: column
flex-wrap: wrap,但必须配 align-content: center 防止上下空隙不均 上设 white-space: nowrap——小屏会强制横向滚动,体验崩坏当前页高亮逻辑不能共用,顶部和页脚需分别判断路径
class="active" 到所有页面是维护灾难。更麻烦的是:顶部导航和页脚导航的路径匹配规则往往不同。比如顶部有 /products,页脚可能只列 /contact 和 /about。JS 判断时容易漏掉这些差异:
window.location.pathname.startsWith('/products') 匹配前缀window.location.pathname === '/contact'
#!/projects)或本地开发(file:// 协议)下,pathname 可能为空,必须兜底处理isActive(path, exact = false),exact 参数控制是否严格相等页脚导航里嵌图标或小 logo 时,
vertical-align 和 line-height 容易失准display: inline-block 或 float 会导致基线错位、高度塌陷。Flex 是解法,但要注意:
自身设 display: flex,应设在它的直接子容器(如 )上 或 时,加 vertical-align: middle 比依赖 align-items: center 更兼容老浏览器font-size 和周围文字一致,否则 line-height 计算会偏移gap,页脚项间距退回到 margin-right,但必须用 :last-child { margin-right: 0 } 清除末项多余间隙 多套一层、路径少判一个斜杠、图标没对齐,都可能让辅助技术用户完全迷失。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











