【问题标题】:Mystery in visited and unvisited links访问和未访问链接的奥秘
【发布时间】:2018-07-14 11:51:49
【问题描述】:

我的问题很简短。

出于什么原因,已从已访问和未访问的链接中删除了文本装饰,但红色仅应用于未访问的链接?

即为什么对这些属性进行不同的处理?

在 Chrome 和 Firefox 中测试。

<p><a href="http://goooooooogle.com">Don't click it, so it should stay unvisited</a></p>
<p><a href="#">Click it, to make it visited</a></p>

<style>
  a:link {
          text-decoration: none;
          color: red;
  }
</style>

【问题讨论】:

标签: html css hyperlink pseudo-class


【解决方案1】:

color 不同,text-decoration 不在可以使用:visited 伪类更改的属性列表中(请参阅MDN)。

这会导致访问过的链接使用与未访问过的链接相同的文本装饰。您无法解决此问题。

【讨论】:

  • 但这里是关于颜色的
  • @Temani Afif:两者都是。问题是问为什么他们会受到不同的对待。
  • 呃抱歉,但不,我最终没有得到它......好吧,让我们忘记文本装饰,只考虑颜色。在他的情况下,他为 :link 着色,只有未访问的被着色为红色,而 :visited 保持初始颜色......你说我们可以使用颜色来访问,所以这不是我回答的具体问题? asvisited 更具体,或者 :link 不针对 :visited ?或者我完全出局了:s
  • @Temani Afif:是的,这不是特异性问题。不涉及竞争或压倒一切的规则,因为问题不是问a,而是问a:linka:visited,它们不会相互覆盖(MDN 设法自相矛盾 i> 对此)。基本上, :visited 只允许设置特定的属性,而不允许的属性取自 :link (在某种意义上“继承”,但当然我们这里不是在谈论 CSS 继承)。
  • @BoltClock 可能会添加有关:link:visited 的互斥性以及MDN 信息不正确的信息,正如您在Dippas 的帖子下面所述。我在这里做了一个草稿:jsfiddle.net/rd6yepdg
猜你喜欢
  • 1970-01-01
  • 2014-03-02
  • 2011-11-09
  • 2011-12-31
  • 1970-01-01
  • 2015-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多