没有 href 属性的样式 < a >

是否有可能匹配所有的链接没有指定的 href通过 CSS?

例如:

<a>Invalid link</a>

我知道它可能匹配所有链接与 href,但我只是寻找相反的。

42089 次浏览

要么使用 CSS3的 :not():

a:not([href]) {
/* Styles for anchors without href */
}

或者为所有 a指定一个通用样式,为具有该属性的 a[href]指定一个重写样式。

a {
/* Styles for anchors with and without href */
}


a[href] {
/* Styles for anchors with href, will override the above */
}

对于 最好的浏览器的支持(包括一些古老但还没有完全被遗忘的浏览器) ,使用 ABC0和 :visited伪类而不是属性选择器(两者结合起来将与 a[href]匹配) :

a {} /* All anchors */
a:link, a:visited {} /* Override */

另请参阅 这个答案以获得关于 a[href]a:link, a:visited的深入解释。