伪类用于定义元素的特殊状态。
例如,它可以用于:
- 设置鼠标悬停在元素上时的样式
- 为已访问和未访问链接设置不同的样式
- 设置元素获得焦点时的样式
- 等等
伪类的语法:
selector:pseudo-class {
property: value;
}
1. 锚伪类
链接能够以不同的方式显示:
/* 未访问的链接 */
a:link {
color: #FF0000;
}
/* 已访问的链接 */
a:visited {
color: #00FF00;
}
/* 鼠标悬停链接 */
a:hover {
color: #FF00FF;
}
/* 已选择的链接 */
a:active {
color: #0000FF;
}
注意:a:hover 必须在 CSS 定义中的 a:link 和 a:visited 之后,才能生效!a:active 必须在 CSS 定义中的 a:hover 之后才能生效!伪类名称对大小写不敏感。
2. 伪类和 CSS 类
伪类可以与 CSS 类结合使用:
当您将鼠标悬停在例子中的链接上时,它会改变颜色:
a.highlight:hover {
color: #ff0000;
}
3. 悬停在 <div>
上
在 <div>
元素上使用 :hover 伪类的实例:
div:hover {
background-color: blue;
}
3. 简单的工具提示悬停
把鼠标悬停到 <div>
元素以显示 <p>
元素(类似工具提示的效果):
<div>鼠标移到我上面来显示 p 元素
<p>哈哈!我在这里!</p>
</div>
p {
display: none;
background-color: yellow;
padding: 20px;
}
div:hover p {
display: block;
}
效果展示:
移动前:
移动后:
4. CSS - :first-child 伪类
(1):first-child 伪类与指定的元素匹配:该元素是另一个元素的第一个子元素。
在下面的例子中,选择器匹配作为任何元素的第一个子元素的任何 <p>