html - 覆盖 :link by class 的 CSS

标签 html css

在现有的 CSS 文件中,我们有:

a:link {
    text-decoration: none;
    color: #0486d9;
}

a:visited {
    text-decoration: none;
    color: #0486d9;
}

这很好,但我不希望在所有情况下都使用该样式。例如,对于此链接,我希望它始终为白色并带有下划线:

<a id="someId" class="GridviewSort" href="...">Date</a>

我以为这样就可以了:

.GridviewSort a:link {
    text-decoration: underline;
    color: white;
}

.GridviewSort a:visited {
    text-decoration: underline;
    color: white;
}

但事实并非如此。保留了原来的风格。我做错了什么?

编辑:

谢谢,stybl。出于某种原因,原来的蓝色仍然占主导地位。但是下划线正在工作!这是正在发生的事情:

enter image description here

编辑 2:

好的,在同一个样式表中更上一层是这样的:

a {
    color: #0486d9 !important;
}

这仍然强制链接为蓝色。我不想更改或删除此行,因为它可能会对网站的其他地方产生影响。有没有办法覆盖这个?

最佳答案

.GridviewSort a:visited目标 <a>属于 GridviewSort 元素的标签类(class)。你想要的是目标 <a>具有该类的标签。

这应该有效:

a.GridviewSort:link {
    text-decoration: underline;
    color: white;
}

a.GridviewSort:visited {
    text-decoration: underline;
    color: white;
}

注意:如果您打算为已点击和未点击的链接使用完全相同的样式,您可以像这样缩短它:

a.GridviewSort:link,
a.GridviewSort:visited {
    text-decoration: underline;
    color: white;
}

关于html - 覆盖 :link by class 的 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47229415/

相关文章:

javascript - 当 href 为空时隐藏 <li>

css - Twitter Bootstrap 输入附加不是容器的全宽

css - 圆 Angular 在 IE 上不起作用

javascript - 如何在 React 中正确切换元素(如果它在数组中)

html - 内有图像的九边形

javascript - 视频背景有时有边框,有时不在 Bootstrap 中

javascript - 从标签返回文本,其中最外层 HTML 标签适用于 jquery 中的所有文本节点

c# - 澄清暂时禁用提交按钮几秒钟,然后重新启用它?

jquery - 如何单独折叠这些表格?

高于 1 行时 "more..."的 HTML DIV 或 SPAN 标记