1

有什么快速的方法可以使:visited链接与链接本身的颜色相同?

例如:

* {color:black}
a:link {color:blue}
a:visited {color:inherit}

当我访问链接时,这个 css 将链接变为黑色。
但我想保留链接的原始颜色(在这种情况下为蓝色)。

我想我可以做类似的事情:

a:link, a:visited {color:blue}

但是,我有一个巨大的 css,里面有很多链接,有不同的颜色,而且没有来自一年前编写这个代码的愚蠢的设计师(我)的评论。应用该解决方案将是一场噩梦,因为链接有一百种样式。

那么......有没有办法用“原始”颜色覆盖:visited颜色,而不改变整个样式表?

(这可能是这个问题的重复,但给定的答案都不起作用,我不能使用 JS(客户要求)。)

4

1 回答 1

0

在出现更好的答案之前,有一个部分解决方案:根据这个 MDN 页面,Mozilla-moz-visitedhyperlinktext将超链接定义为“已访问”颜色。

所以,如果你有这个 HTML:

<a href="#">This is what an a normally looks like</a>
<div class="test">
    <a href="#">This is an a in a black container</a>
</div>
<div class="test">
    <a href="#" style="color:-moz-visitedhyperlinktext">This is a visited a?</a>
</div>

使用这个 CSS:

.test, .test * {color:black}

a正如你在这个小提琴中看到的那样,意志看起来“自然” 。仅在 Mozilla 中。

它在其他浏览器中不起作用,但您可以编写

color:blue;
color:-moz-visitedhyperlinktext;

对于颜色,其他浏览器将忽略 -moz- 之一。

于 2013-08-30T18:35:07.733 回答