更改焦点上的链接颜色但不单击(鼠标或键盘单击)

时间:2015-08-06 15:17:40

标签: html css

当用户通过使用TAB键导航到链接时,我想更改链接的颜色。 这是最容易的部分,因为它是由此完成的:

env[HOSTALIASES] = /etc/hosts.php-fpm

问题是,链接在激活时也会显示为红色,例如:当用户单击" ENTER"键或鼠标左键单击。

如果使用" TAB"用户专注于链接,我该如何防止此副作用并保持着色?关键?

我试过了:

a:focus{ color: red; }

(蓝色是默认颜色) 它没有工作,发生的事情是它首先将链接变为蓝色,然后在第二个时间点变成红色......

我需要对我网站上的每个链接执行此操作,因此我不想使用任何复杂的JavaScript代码来执行此操作,并希望仅在CSS中执行此操作。

有什么建议吗?

编辑:我也试过了:

a:focus{ color: red; }
a:active{ color: blue; }

为了捕捉元素聚焦和激活的状态,所以我可以覆盖"焦点" CSS。 它也没有用。

4 个答案:

答案 0 :(得分:0)

尝试使用:visited pseudo class

a:visited{color:blue;}

答案 1 :(得分:0)

我认为你不能只在css中这样做。

点击链接后,您可以将其重点关注。

你可以尝试一个小的jquery例程来为你的所有链接提供一个点击处理程序,它会立即模糊焦点吗?

$(function () {
    $('a').on('click', function() {
        this.blur();
    });
})

jsfiddle:https://jsfiddle.net/6sujjuvn/

在小提琴中,您可以看到在它生成新标签/窗口后,您在jsfiddle页面上的点击链接不再具有焦点

答案 2 :(得分:0)

问题在于规则的顺序。

a:link
a:visited
a:hover
a:active
a:focus

焦点必须是最后一个。 我试过了,效果很好。

答案 3 :(得分:-1)

你试过了吗?

a:active{ color: default; }