在使用 tabindex="0" 作为 div 包装器后,按输入锚标记不起作用
On press enter anchor tag is not working after using tabindex="0" for div wrapper around it
我有一个问题,safari 没有聚焦我的锚元素,所以我在 div 周围使用了 tabindex="0",现在按下输入 link 不起作用在任何浏览器中,如果我做错了什么,请告诉我。
<div class="used__button" tabindex="0">
<a href="/new/sales/lights/red-lamps">Find Used</a>
</div>
在使用 tabindex 之前,link 在 chrome 按 enter 时工作,我使用 tabinde ="0" 将焦点放在选项卡上的 safari 中的元素以实现辅助功能。
您不应将两个可聚焦元素一个放在另一个中,因为不应该将两个可点击元素一个放在另一个中。
这是无穷无尽的奇怪错误的来源,就像您在这里遇到的错误一样。
当您在内部元素中按下 enter 时,事件是否会冒出?
在这种情况下,多个动作是否应该同时发生?
聚焦内部元素时,外部元素是否仍然聚焦?
我怎么知道在另一个内部有两个不同的区域?
这种问题不是很清楚,不一定能很好控制,and/or取决于浏览器。简而言之,您和可能会发现您的网站行为怪异的用户都不清楚。
所以你最好完全避免这种模式。
回到您的具体情况,您很可能应该从外部 div 中删除 tabindex=0,以便让内部 link 正常工作。
或者,如果您真的认为 div 必须是可聚焦的,更好的解决方案是删除内部 link 并将 div 更改为 link在它的地方。
ARIA 的第一条规则说,如果你真的不需要,你不应该使用它; tabindex 也是一样的。如果这不是您想要的,请使用 CSS 删除 link 样式。
我有一个问题,safari 没有聚焦我的锚元素,所以我在 div 周围使用了 tabindex="0",现在按下输入 link 不起作用在任何浏览器中,如果我做错了什么,请告诉我。
<div class="used__button" tabindex="0">
<a href="/new/sales/lights/red-lamps">Find Used</a>
</div>
在使用 tabindex 之前,link 在 chrome 按 enter 时工作,我使用 tabinde ="0" 将焦点放在选项卡上的 safari 中的元素以实现辅助功能。
您不应将两个可聚焦元素一个放在另一个中,因为不应该将两个可点击元素一个放在另一个中。 这是无穷无尽的奇怪错误的来源,就像您在这里遇到的错误一样。
当您在内部元素中按下 enter 时,事件是否会冒出? 在这种情况下,多个动作是否应该同时发生? 聚焦内部元素时,外部元素是否仍然聚焦? 我怎么知道在另一个内部有两个不同的区域? 这种问题不是很清楚,不一定能很好控制,and/or取决于浏览器。简而言之,您和可能会发现您的网站行为怪异的用户都不清楚。 所以你最好完全避免这种模式。
回到您的具体情况,您很可能应该从外部 div 中删除 tabindex=0,以便让内部 link 正常工作。
或者,如果您真的认为 div 必须是可聚焦的,更好的解决方案是删除内部 link 并将 div 更改为 link在它的地方。 ARIA 的第一条规则说,如果你真的不需要,你不应该使用它; tabindex 也是一样的。如果这不是您想要的,请使用 CSS 删除 link 样式。