CSS3选择器是对CSS2选择器的扩展,提供了更多强大的选择能力。以下是CSS3中一些常用的选择器:
2. 伪类选择器: `:root`:选择文档的根元素。 `:not`:选择非E元素。 `:firstchild`:选择其父元素的第一个子元素。 `:lastchild`:选择其父元素的最后一个子元素。 `:onlychild`:选择其父元素的唯一子元素。 `:nthchild`:选择其父元素的第n个子元素。 `:nthlastchild`:选择其父元素的倒数第n个子元素。 `:firstoftype`:选择其父元素中第一个使用此类型的元素。 `:lastoftype`:选择其父元素中最后一个使用此类型的元素。 `:onlyoftype`:选择其父元素中唯一使用此类型的元素。 `:nthoftype`:选择其父元素中第n个使用此类型的元素。 `:nthlastoftype`:选择其父元素中倒数第n个使用此类型的元素。 `:empty`:选择没有子元素的元素。 `:target`:选择当前活动的目标元素。 `:enabled`、`:disabled`:选择启用或禁用的表单元素。 `:checked`:选择被选中的表单元素。 `:valid`、`:invalid`:选择有效或无效的表单元素。 `:inrange`、`:outofrange`:选择值在指定范围内的表单元素。 `:readonly`、`:readwrite`:选择只读或可读写的表单元素。 `:focus`:选择获得焦点的元素。 `:hover`、`:active`、`:visited`:选择鼠标悬停、激活或已访问过的元素。
3. 伪元素选择器: `::firstletter`:选择元素文本的第一个字母。 `::firstline`:选择元素文本的第一行。 `::before`:在元素内容之前插入内容。 `::after`:在元素内容之后插入内容。 `::selection`:选择用户当前选中的元素部分。
4. 结构性伪类选择器: `:root`:选择文档的根元素。 `:empty`:选择没有子元素的元素。 `:target`:选择当前活动的目标元素。 `:firstchild`、`:lastchild`、`:onlychild`:选择其父元素的第一个子元素、最后一个子元素或唯一子元素。 `:nthchild`、`:nthlastchild`:选择其父元素的第n个子元素或倒数第n个子元素。 `:firstoftype`、`:lastoftype`、`:onlyoftype`:选择其父元素中第一个使用此类型的元素、最后一个使用此类型的元素或唯一使用此类型的元素。 `:nthoftype`、`:nthlastoftype`:选择其父元素中第n个使用此类型的元素或倒数第n个使用此类型的元素。
5. 通用兄弟选择器: `E ~ F`:选择所有兄弟元素F,其中F在E之后。
6. 子选择器: `E > F`:选择所有作为E的子元素的F元素。
7. 相邻兄弟选择器: `E F`:选择紧接在E元素后的F元素。
8. 后代选择器: `E F`:选择所有作为E元素后代的F元素。
这些选择器为CSS样式提供了更精细的控制,使开发者能够更精确地定位和样式化HTML文档中的元素。
CSS3选择器详解
CSS3选择器是网页设计中不可或缺的一部分,它允许开发者精确地控制网页元素的样式。随着CSS3的不断发展,选择器的种类和功能也在不断丰富。本文将详细介绍CSS3选择器的种类、使用方法和注意事项。
基本选择器
1. 元素选择器
```css
color: red;
2. ID选择器
ID选择器是根据元素的ID属性来选择元素。ID属性在HTML文档中应该是唯一的。例如:
```css
box {
width: 200px;
height: 200px;
background-color: blue;
上述代码将使ID为`box`的元素具有指定的样式。
3. 类选择器
类选择器是根据元素的class属性来选择元素。与ID选择器不同,class属性可以重复使用。例如:
```css
.box {
color: green;
上述代码将使所有class属性包含`box`的元素文字颜色变为绿色。
4. 群组选择器
群组选择器可以将多个选择器组合在一起,通过逗号分隔。例如:
```css
p, div {
margin: 0;
padding: 0;
5. 通配符选择器
通配符选择器可以选择页面中的所有元素。例如:
```css
box-sizing: border-box;
上述代码将使所有元素的盒模型包含边框和内边距。
层次选择器
1. 后代选择器
后代选择器可以选择一个元素的所有后代元素。例如:
```css
.parent div {
background-color: yellow;
上述代码将选择`.parent`元素下的所有``元素,并将它们的背景颜色设置为黄色。
2. 子选择器
子选择器可以选择一个元素的所有直接子元素。例如:
```css
.parent > div {
border: 1px solid black;
上述代码将选择`.parent`元素下的所有直接``元素,并为它们添加边框。
3. 相邻兄弟选择器
相邻兄弟选择器可以选择一个元素后面的紧邻兄弟元素。例如:
```css
div p {
font-weight: bold;
4. 通用兄弟选择器
通用兄弟选择器可以选择一个元素后面的所有兄弟元素。例如:
```css
div ~ p {
text-decoration: underline;
伪类选择器
1. 动态伪类选择器
动态伪类选择器用于选择处于特定状态的元素。例如:
```css
a:link {
color: blue;
a:visited {
color: purple;
a:hover {
color: red;
a:active {
color: green;
上述代码将分别设置超链接的初始状态、访问过后的状态、鼠标悬停状态、鼠标按下状态的颜色。
2. 结构伪类选择器
结构伪类选择器用于选择具有特定结构的元素。例如:
```css
ul li:first-child {
font-weight: bold;
上述代码将选择无序列表``的第一个``元素,并将它的字体加粗。
元素选择器
ID选择器
ID选择器是根据元素的ID属性来选择元素。ID属性在HTML文档中应该是唯一的。
类选择器
类选择器是根据元素的class属性来选择元素。与ID选择器不同,class属性可以重复使用。
群组选择器
群组选择器可以将多个选择器组合在一起,通过逗号分隔。