Html 为什么我的visted链接代码不起作用

Html 为什么我的visted链接代码不起作用,html,Html,如果有人能告诉我为什么下面代码中被访问的链接部分不起作用,我将不胜感激:(悬停颜色确实起作用,但链接被访问后颜色没有变化) 非常感谢, 一月 我认为问题是你应该有a:link{}而不是仅仅a{},也要拿走/*,除非你有评论,并确保用另一个*/关闭它。您的CSS应该如下所示: a:link { color: #5fade5; text-decoration: none; } a:hover { color: #2d71a4; } a:visited { color: #096782; } 如

如果有人能告诉我为什么下面代码中被访问的链接部分不起作用,我将不胜感激:(悬停颜色确实起作用,但链接被访问后颜色没有变化)

非常感谢, 一月


我认为问题是你应该有
a:link{}
而不是仅仅
a{}
,也要拿走
/*
,除非你有评论,并确保用另一个
*/
关闭它。您的CSS应该如下所示:

a:link {
color: #5fade5;
text-decoration: none;
}

a:hover {
color: #2d71a4;
}

a:visited {
color: #096782;
}

如果访问了链接并将其悬停,则所有三个选择器都将匹配该元素

a:hover
a:visitored
选择器具有相同的特异性,因此最后一个选择器中的规则将覆盖前一个选择器中的匹配属性

移动
:hover
规则,使其显示在
:visted
规则之后,以便
:hover
规则覆盖
:visted
规则,而不是相反

您可以在CSS规范中了解相关内容。

在回答“为什么下面代码的链接部分不工作”时,实际上是这样的。然而:

a) 你们的颜色都非常相似,悬停和访问的颜色在短文本中几乎无法区分

b) 正如昆汀所说,你的访问和悬停规则的顺序是错误的,因此你会看到一次悬停颜色,但不会再看到,因为访问的人会推翻它

c) 最后,不要忘记,一旦你点击了链接,它将始终保持该颜色(悬停除外),并且永远不会返回到未访问过的新颜色,即使在页面刷新之后,因为你的浏览器记得你访问过它。要再次看到原始颜色,请在每次测试时更改链接目标url

因此,所有这些观点加在一起可能会混淆问题。为了测试它,试着给这三条规则赋予非常不同的颜色,例如蓝色、红色和灰色(并重新排列悬停/访问规则),这样你就可以更清楚地看到发生了什么。我希望这能确定您遇到的问题


此外,您还应该添加一个焦点规则(与悬停规则颜色相同,紧跟其后),以便键盘用户可以看到他们在哪个链接上

某些浏览器出于隐私原因禁用此功能,它不是100%可靠的。请编辑您的问题并添加html链接代码too@MightyPork-我从来没见过浏览器这么做。出于隐私原因,Most将禁用JavaScript使用
getComputedStyle
访问的
:颜色的功能,但他们并不倾向于禁用对颜色的
:hover
支持。添加
:link
唯一能做的就是阻止
文本装饰
规则应用于根本不是链接的已访问链接和锚定。在CSS文件的结尾有一个开放的评论没有坏处。谢谢大家。事实证明,订单是问题的一部分,但还有一个问题。我正在尝试调整的代码是一个Weebly模板,我还远没有进入html.css的专家级别。我已经更改了顺序,但是现在有两个问题:1)访问的链接仍然没有显示在桌面上。2) 在平板电脑上,它只显示一次。我正在粘贴一段更大的代码,因为它现在已经存在:嗨,谢谢大家的帮助。我已经做了你们所有人建议的更改,但仍然无法正确显示访问的链接。在桌面上,它根本不显示。在平板电脑(ipad)上,访问链接变为悬停链接的颜色,但只有在单击下一个链接时才会变为原来的颜色。也许这是我试图编辑的Weebly模板。下面是我尝试过的最新版本的代码:好的,下面是代码:------------------------------------------------------------------------------------------*/ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input{margin:0;padding:0;}a img{border:0;}a:link{color:#092a82;文本装饰:无;}a:已访问{color:#096782;}a:悬停{color:#2d71a4;}
a:link {
color: #5fade5;
text-decoration: none;
}

a:hover {
color: #2d71a4;
}

a:visited {
color: #096782;
}