导航中的按钮而不是锚点?

cec*_*ode 3 html accessibility semantic-markup hyperlink htmlbutton

我一直在阅读有关 Web 可访问性的内容,并了解到只有当用户将被带到另一个没有 JavaScript 的 URL 时才应该使用锚标记。但是只要发生其他一些行为,例如打开模态,就应该使用按钮。

所以我想知道是否可以或预期在导航中同时包含按钮和锚点。像这样的东西:

<nav>
  <a href="/">Home Page</a>
  <a href="/about">About Page</a>
  <button>Sign Up</button>
</nav>
Run Code Online (Sandbox Code Playgroud)

假设在这种情况下,注册按钮会启动一个模式或执行一些不会将用户带到不同 URL 的其他行为。两者都可以nav吗?我不关心样式,我会让这些看起来一致,但我想知道处理这样的事情最正确的方法是什么?

slu*_*ous 7

从可访问性的角度来看,同时使用链接和按钮是语义上正确的方法。这些链接将您带到另一个页面(或当前页面上的其他地方),按钮执行操作。当屏幕阅读器用户在同一个 <nav> 中听到“链接”或“按钮”时,他们就会明白不同的动作会发生。