DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 200 美元的免费额度!
:link 选择器是一个伪类,它会定位页面上所有具有 href 属性的锚点 (<a>) 元素。
a:link {
color: aquamarine;
}
上面的示例将所有链接的颜色更改为碧绿色。
当与 :hover 伪类组合使用时,:link 必须先出现,或者根本不定义,才能使 :hover 样式生效。这是因为它们的 特异性 相同,因此,如果 :link 放在后面,这些样式将覆盖悬停样式。请记住 爱与恨 的规则来确定正确的顺序。
:link 伪类将定位所有具有 href 属性的 <a> 元素,即使 href 的值为 空。因此,从这个意义上讲,它类似于 属性选择器 [href]。
以下是一些示例,用于查看哪些内容将与 :link 伪类匹配。
<!-- will be matched -->
<a href="https://css-tricks.org.cn">CSS-Tricks</a>
<!-- invalid HTML, but will still match -->
<a href>CSS-Tricks</a></code>
<!-- will not be matched -->
<a>CSS-Tricks</a>
只有三个 HTML 元素接受 href 属性:<a>、<link> 和 <area>。只有 <a> 元素可以通过 :link 伪类进行样式设置。此外,您不能将 href 属性添加到其他类型的元素并使其可以通过 :link 进行样式设置。换句话说,如果您有以下 HTML
<div href="https://css-tricks.org.cn">CSS-Tricks</div>
以下 CSS 将不起作用
div:link {
color: aquamarine;
}
同样,HTML 将无法通过验证,因为 href 不是 <div> 的有效属性。
由于 :link 只能定位 <a> 元素,因此可以在 CSS 中定义 :link 样式,而无需使用元素类型选择器,如下所示
:link {
color: aquamarine;
}
此外,在使用 HTML 的所有实际用途方面,:link 伪类在某种程度上是不相关的,因为可以通过简单地直接定位所有 <a> 元素来实现相同的效果。
a {
color: aquamarine;
}
但是,如果页面上存在任何未设置 href 属性的 <a> 元素(例如,在使用 <a name="example"> 的旧版页面上),上述代码也将定位这些元素,这可能不是期望的结果。
还应该指出的是,从 CSS2 开始,其他文档语言(除了 HTML)可能会定义除锚点之外的其他元素,这些元素可以通过 :link 伪类进行样式设置。
浏览器支持
| IE | Edge | Firefox | Chrome | Safari | Opera |
|---|---|---|---|---|---|
| 全部 | 全部 | 全部 | 全部 | 全部 | 全部 |
| Android Chrome | Android Firefox | Android 浏览器 | iOS Safari | Opera Mobile |
|---|---|---|---|---|
| 全部 | 全部 | 全部 | 全部 | 62 |
很酷,安娜,很好
读起来很有趣;)