从超链接中删除所有样式/格式

我正在用不同颜色的单词创建一个导航菜单(href链接)。我想颜色不改变任何状态(悬停,访问等)。

我知道如何为不同的状态设置颜色,但我想知道的代码只是离开文本颜色(和任何其他样式/格式),因为它是。

有什么建议吗?

463312 次浏览

如果你设置了a.redLink{color:red;},那么要保持悬停状态,这样添加a.redLink:hover{color:red;},这将确保没有其他悬停状态会改变你的链接的颜色

你可以在样式表中使用a选择器来定义锚点/超链接的所有状态。例如:

a {
color: blue;
}

将覆盖所有链接样式,并使所有状态的颜色为蓝色。

你可以简单地为链接定义一个样式,它将覆盖a:hovera:visited等:

a {
color: blue;
text-decoration: none; /* no underline */
}

如果你想使用父样式的属性,你也可以使用inherit值:

body {
color: blue;
}
a {
color: inherit; /* blue colors for links too */
text-decoration: inherit; /* no underline */
}

正如Chris在我之前所说,只有a应该被覆盖。例如:

a { color:red; }
a:hover { color:blue; }
.nav a { color:green; }

在这种情况下,.nav a总是为绿色,:hover将不适用于它。

如果有其他规则影响它,你可以使用!important,但你不应该这样做。这是一个坏习惯。

.nav a { color:green !important; } /*I'm a bad person and shouldn't use !important */

然后总是将是绿色的,与任何其他规则无关。

属性值对:

a {
all: unset;
}


在我看来似乎更干净,并具有与所有选择器一起工作的优势,例如:

a, button /* &c... */ {
all: unset;
}


要了解有关all速记的更多信息,请签出本页:https://developer.mozilla.org/en-US/docs/Web/CSS/all
正如Emi所说,不要忘记检查兼容性: https://caniuse.com/css-all < / p >