如何使没有href属性的锚点标签获得焦点

21

如何在使用键盘Tab键时设置焦点?

<a class="ui-datepicker-prev ui-corner-all" data-handler="prev" data-event="click" title="Prev"><span class="ui-icon ui-icon-circle-triangle-w">Prev</span></a>

我尝试使用如下CSS:

ui-datepicker-prev:focus { border:1px solid red}

但这并不起作用。有人知道吗?


1
href="javascript:void(0)" 怎么样? - Huy Chau
4个回答

15

首先,类选择器应该以点号开头:

.ui-datepicker-prev:focus {border: 1px solid red; }

如果要使默认情况下不可聚焦的元素能够使用键盘导航,设置 tabindex="0" 属性应该有所帮助。


一个没有 href 属性的锚点可以通过 tabindex="0" 成为可制表元素,但是据我所知,按下 Enter 键并不会激活它。 - Drenai
@Ryan href属性为空的A元素没有默认操作,这是可以接受的,因为它旨在由JS处理。 - Marat Tanalin

12

要使其可聚焦,请设置 tabindex="0" 或指定 href="javascript:;"


1

tabindex="0"将使元素能够聚焦,但不能使用Enter键进行点击。需要使用href属性。


你的回答可以通过提供更多支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的答案是正确的。您可以在帮助中心找到有关如何编写良好答案的更多信息。 - Philippe

-4

我遇到了同样的问题,浏览器不会将焦点定位到没有 href 属性的 <a> 标签上。我通过在锚点标签中添加空的 href 属性来解决这个问题,像这样:

<a href="">链接</a>


2
这做的事情比什么都不做还要糟糕,它会将你导向主页。 - jscul

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接