1. `:root`:选择文档的根元素,通常用于设置全局样式。2. `:not`:选择不匹配指定选择器的元素。3. `:target`:选择当前活动的锚点(即 URL 中的 `` 后面跟的元素)。4. `:empty`:选择没有子元素的元素(包括文本节点)。5. `:enabled` 和 `:disabled`:分别选择启用和禁用的表单元素。6. `:checked`:选择被选中的表单元素,如单选按钮或复选框。7. `:indeterminate`:选择不确定状态的复选框(通常用于进度指示)。8. `:valid` 和 `:invalid`:分别选择有效和无效的表单元素。9. `:inrange` 和 `:outofrange`:分别选择值在指定范围内的表单元素和值超出指定范围的表单元素。10. `:readonly` 和 `:readwrite`:分别选择只读和可读写的表单元素。11. `:optional` 和 `:required`:分别选择可选和必填的表单元素。12. `:nthchild`、`:nthlastchild`、`:nthoftype`、`:nthlastoftype`:基于元素的序号选择元素。13. `:firstchild`、`:lastchild`、`:firstoftype`、`:lastoftype`:选择第一个或最后一个子元素或同类型元素。14. `:onlychild` 和 `:onlyoftype`:选择唯一的子元素或唯一的同类型元素。15. `:lang`:选择指定语言的元素。
这些伪类可以与其他选择器结合使用,以实现更精确的元素选择和样式应用。
CSS3 新增伪类:丰富网页交互体验的利器
随着网页设计的不断发展,CSS3 的出现为前端开发者带来了更多的可能性。其中,CSS3 新增的伪类选择器极大地丰富了网页的交互体验,使得网页元素的表现力更加丰富。本文将详细介绍 CSS3 新增的伪类选择器,帮助开发者更好地理解和应用这些特性。
一、CSS3 伪类的概述
伪类(Pseudo-classes)是 CSS3 中的一种特殊选择器,用于选择具有特定状态或条件的元素。与类选择器相比,伪类不需要在 HTML 元素上显式添加类名,而是通过 CSS 选择器直接指定。CSS3 新增的伪类选择器主要包括以下几类:
- 动态伪类:用于选择具有特定交互状态的元素,如鼠标悬停、点击等。
- 结构伪类:用于选择具有特定结构关系的元素,如第一个子元素、最后一个子元素等。
- UI 伪类:用于选择具有特定用户界面状态的元素,如选中的复选框、禁用的表单元素等。
- 语言伪类:用于选择具有特定语言属性的元素。
二、CSS3 动态伪类
- :link:选择未被访问过的超链接。
示例代码:
```css
a:link {
color: blue;
```
- :visited:选择已被访问过的超链接。
示例代码:
```css
a:visited {
color: purple;
```
- :hover:选择鼠标悬停在上面的元素。
示例代码:
```css
div:hover {
background-color: f0f0f0;
```
- :active:选择正在被点击的元素。
示例代码:
```css
button:active {
background-color: ccc;
```
- :focus:选择获得焦点的元素。
示例代码:
```css
input:focus {
border: 1px solid 0095ff;
```
三、CSS3 结构伪类
- :first-child:选择其父元素下的第一个子元素。
示例代码:
```css
ul li:first-child {
color: red;
```
- :last-child:选择其父元素下的最后一个子元素。
示例代码:
```css
ul li:last-child {
color: green;
```
- :nth-child(n):选择其父元素下的第 n 个子元素。
示例代码:
```css
ul li:nth-child(3) {
color: blue;
```
- :first-of-type:选择其父元素下第一个同类型的子元素。
示例代码:
```css
p:first-of-type {
font-weight: bold;
```
四、CSS3 UI 伪类
- :checked:选择选中的复选框或单选按钮。
示例代码:
```css
input[type=\