使用 CSS 强制 link 看起来未访问过
Force link to look not visited using CSS
有没有办法使用 CSS 使给定的 link 显示为未访问过,即使它已经被访问过?
我知道您可以通过为已访问和未访问的 link 明确设置相同的颜色来做到这一点。但是,如果不对所访问的 link 的颜色进行硬编码,是否可以做到这一点?只需告诉 CSS 使用与未访问的 link 相同的颜色为它们着色,无论可能是什么。
这样做的原因是我想 Rickroll 一个朋友。
您可以利用 inherit
属性:
a:visited {
color: inherit;
}
另一种选择是使用 !important
:
a {
color: red !important;
}
使用 Javascript 的一种解决方案是使用 getComputedStyle
函数获取颜色。这利用了这样一个事实,即 getComputedStyle
函数总是假装 link 是彩色的,就好像它没有被访问过一样(作为 anti-fingerprinting 度量)。
// Set the colot of a link to the color of a non-visited link
var link = document.getElementById("TheID");
var color = window.getComputedStyle(link).getPropertyValue("color");
link.style.color = color;
有没有办法使用 CSS 使给定的 link 显示为未访问过,即使它已经被访问过?
我知道您可以通过为已访问和未访问的 link 明确设置相同的颜色来做到这一点。但是,如果不对所访问的 link 的颜色进行硬编码,是否可以做到这一点?只需告诉 CSS 使用与未访问的 link 相同的颜色为它们着色,无论可能是什么。
这样做的原因是我想 Rickroll 一个朋友。
您可以利用 inherit
属性:
a:visited {
color: inherit;
}
另一种选择是使用 !important
:
a {
color: red !important;
}
使用 Javascript 的一种解决方案是使用 getComputedStyle
函数获取颜色。这利用了这样一个事实,即 getComputedStyle
函数总是假装 link 是彩色的,就好像它没有被访问过一样(作为 anti-fingerprinting 度量)。
// Set the colot of a link to the color of a non-visited link
var link = document.getElementById("TheID");
var color = window.getComputedStyle(link).getPropertyValue("color");
link.style.color = color;