样式<a> without href attribute</a>

时间:2011-02-26 17:57:49

标签: html css css-selectors

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

示例:

<a>Invalid link</a>

我知道可以将所有链接与href匹配,但我只是在寻找相反的方法。

1 个答案:

答案 0 :(得分:93)

使用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 */
}

对于最佳浏览器支持(包括古老但未完全忘记的浏览器),请使用:link and :visited pseudo-classes代替属性选择器(两者的组合将与a[href]相同):

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

另请参阅this answer,了解a[href]a:link, a:visited的深入说明。