必须用++,禁用和;当前页不能有href,且须同时带class="active"和aria-current="page"。因页码严格有序,明确表达顺序语义,屏幕阅读器读作“第1项、第2项”,而被视作无序,丢失导航意图;或拼凑则无法被辅助技术识别为分页。

必须用 <nav></nav> + <ol></ol> + @#@#@#@#@#@#@#@#@#@0(href="#" 导致跳顶,class="disabled" 无语义)
正确写法:@#@#@#@#@#@#@#@#@#@1
注意:
- 不要用
disabled属性——HTML 规范不支持它在<a></a>上生效 -
tabindex="-1"防止键盘聚焦,但保留鼠标可点击(如果后续 JS 启用,可再改) - 若整个
<li>禁用,应在<li>上加aria-disabled="true",而非只作用于内部链接
移动端和键盘导航容易忽略的细节
小屏下页码横向溢出时,别急着加 JS 折叠逻辑。纯 CSS 媒体查询就能解决:用 flex-direction: column + align-items: flex-start 把页码转为垂直排列,保持语义和焦点顺序不变。键盘用户按 Tab 依然能线性遍历,不会漏项或跳错。
另外,<nav></nav> 必须带 aria-label,值不能是空或泛泛的“导航”,得明确写成 aria-label="页码导航" 或 aria-label="文章列表分页"。否则屏幕阅读器只会说“导航”,用户不知道这是干啥的。
最后提醒:所有路径必须用绝对路径(如 /blog/page/3.html)或配 <base href="/subpath/">,相对路径在子目录页点击必然 404——这不是可访问性问题,是基础路径逻辑错误,但常被混为一谈。
<nav aria-label="页码导航"><ol>
<li><a href="/page/1.html">1</a></li>
<li><a href="/page/2.html">2</a></li>
<li class="active" aria-current="page">3</li>
<li><a href="/page/4.html">4</a></li>
</ol></nav>前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











