【问题标题】:WAI-ARIA: Why does it recommend breadcrumbs have a link to the current page?WAI-ARIA:为什么推荐面包屑有指向当前页面的链接?
【发布时间】:2020-05-22 09:01:52
【问题描述】:
WAI-ARIA breadcrumb example 有以下规则:
指向当前页面的链接已将 aria-current 设置为 page。如果表示当前页面的元素不是链接,则 aria-current 是可选的。
但是,我的理解是面包屑中的当前页面不应该是一个链接,因为这个链接只会将用户带到他们已经在的页面?这只是对示例的疏忽,还是背后有原因?
【问题讨论】:
标签:
user-interface
accessibility
breadcrumbs
wai-aria
【解决方案1】:
链接到当前页面没有可用性理由,从纯粹的用户体验和可访问性的角度来看,它没有任何作用,实际上增加了另一个制表位和可能的混乱。
然而,可访问性并不是孤立存在的,因此我们需要确定拥有指向当前页面的链接是否还有其他好处。
现在 Stack Overflow 不是 SEO 讨论的地方,但这是经常争论的话题,因为它会根据页面上的链接数量影响“链接汁”的比例,我认为这没有任何道理对此,但这就是您的 SEO 世界,您可以研究/考虑。
另一个原因是如果使用结构化数据,例如schema.org breadcumbList。
虽然有一些方法可以使用structured data without a hyperlink for the last breadcrumb,但如果使用microFormats而不是JSON-LD,它只是留有灵活性
结论
如果不使用链接并更改生成的“微格式”或“JSON-LD”很容易,那么最好不要在面包屑中包含当前页面的超链接。这将提高可用性和用户体验。
但是,如果由于其他限制而确实需要超链接,请确保添加 aria-current="page" 并可能添加一些 visually-hidden text,表示它是当前页面。
例如: <a href="page" aria-current="page">page name <span class="visually-hidden">(current page)</span></a>)