细说CSS3中的选择符
CSS3中的选择符是用来选择HTML元素的一种方式,它可以根据元素的属性、位置、状态等进行选择。本攻略将详细讲解CSS3中的选择符,包括基本选择符、组合选择符、属性选择符、伪类选择符和伪元素选择符等。
1. 基本选择符
CSS3中的基本选择符包括以下几种:
- 元素选择符:选择指定类型的HTML元素,例如
p
选择所有的段落元素。 - 类选择符:选择指定类名的HTML元素,例如
.class
选择所有类名为class的元素。 - ID选择符:选择指定ID的HTML元素,例如
#id
选择所有ID为id的元素。 - 通配符选择符:选择所有的HTML元素,例如
*
选择所有元素。 - 属性选择符:选择具有指定属性的HTML元素,例如
[type=text]
选择所有type属性为text的元素。
2. 组合选择符
CSS3中的组合选择符可以将多个选择符组合在一起,以便更精确地选择HTML元素。常用的组合选择符包括以下几种:
- 后代选择符:选择指定元素的后代元素,例如
div p
选择所有div元素内的段落元素。 - 子元素选择符:选择指定元素的子元素,例如
div > p
选择所有div元素的直接子元素中的段落元素。 - 相邻兄弟选择符:选择指定元素后面的相邻兄弟元素,例如
h1 + p
选择紧接着h1元素后面的段落元素。 - 通用兄弟选择符:选择指定元素后面的所有兄弟元素,例如
h1 ~ p
选择h1元素后面的所有段落元素。
3. 属性选择符
CSS3中的属性选择符可以根据元素的属性值来选择HTML元素。常用的属性选择符包括以下几种:
[attr]
:选择具有指定属性的元素。[attr=value]
:选择具有指定属性和属性值的元素。[attr~=value]
:选择具有指定属性和属性值的元素,其中属性值是一个由空格分隔的词列表,其中至少有一个词与指定值匹配。[attr|=value]
:选择具有指定属性和属性值的元素,其中属性值是一个由连字符分隔的词列表,其中第一个词与指定值匹配。[attr^=value]
:选择具有指定属性和属性值的元素,其中属性值以指定值开头。[attr$=value]
:选择具有指定属性和属性值的元素,其中属性值以指定值结尾。[attr*=value]
:选择具有指定属性和属性值的元素,其中属性值包含指定值。
4. 伪类选择符
CSS3中的伪类选择符可以根据元素的状态来选择HTML元素。常用的伪类选择符包括以下几种:
:link
:选择所有未被访问的链接。:visited
:选择所有已被访问的链接。:hover
:选择鼠标悬停在上面的元素。:active
:选择被激活的元素。:focus
:选择获得焦点的元素。:first-child
:选择作为其父元素的第一个子元素的元素。:last-child
:选择作为其父元素的最后一个子元素的元素。:nth-child(n)
:选择作为其父元素的第n个子元素的元素。:nth-last-child(n)
:选择作为其父元素的倒数第n个子元素的元素。:nth-of-type(n)
:选择作为其父元素的第n个指定类型的子元素的元素。:nth-last-of-type(n)
:选择作为其父元素的倒数第n个指定类型的子元素的元素。:first-of-type
:选择作为其父元素的第一个指定类型的子元素的元素。:last-of-type
:选择作为其父元素的最后一个指定类型的子元素的元素。:only-child
:选择作为其父元素的唯一子元素的元素。:only-of-type
:选择作为其父元素的唯一指定类型的子元素的元素。
5. 伪元素选择符
CSS3中的伪元素选择符可以在HTML元素的某些部分上添加样式。常用的伪元素选择符包括以下几种:
::before
:在元素的内容前面插入一个内容。::after
:在元素的内容后面插入一个内容。::first-letter
:选择元素的第一个字母。::first-line
:选择元素的第一行。::selection
:选择被用户选中的部分。
6. 示例说明
6.1 示例一
下面是一个示例,演示了如何使用CSS3中的选择符选择HTML元素。
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
<style>
/* 选择所有段落元素 */
p {
color: red;
}
/* 选择类名为highlight的元素 */
.highlight {
background-color: yellow;
}
/* 选择ID为header的元素 */
#header {
font-size: 24px;
}
/* 选择所有带有title属性的元素 */
[title] {
border: 1px solid black;
}
/* 选择所有带有type属性为text的元素 */
[type=text] {
width: 200px;
}
/* 选择所有div元素内的段落元素 */
div p {
font-style: italic;
}
/* 选择所有div元素的直接子元素中的段落元素 */
div > p {
font-weight: bold;
}
/* 选择紧接着h1元素后面的段落元素 */
h1 + p {
color: blue;
}
/* 选择h1元素后面的所有段落元素 */
h1 ~ p {
text-decoration: underline;
}
/* 选择所有未被访问的链接 */
a:link {
color: green;
}
/* 选择所有已被访问的链接 */
a:visited {
color: purple;
}
/* 选择鼠标悬停在上面的元素 */
a:hover {
text-decoration: none;
}
/* 选择被激活的元素 */
a:active {
color: red;
}
/* 选择获得焦点的元素 */
input:focus {
background-color: lightblue;
}
/* 在元素的内容前面插入一个内容 */
p::before {
content: ">> ";
}
/* 在元素的内容后面插入一个内容 */
p::after {
content: " <<";
}
/* 选择元素的第一个字母 */
p::first-letter {
font-size: 24px;
}
/* 选择元素的第一行 */
p::first-line {
font-weight: bold;
}
/* 选择被用户选中的部分 */
::selection {
background-color: yellow;
color: black;
}
</style>
</head>
<body>
<div>
<p class="highlight" title="This is a paragraph.">Hello, World!</p>
<p>This is another paragraph.</p>
</div>
<h1 id="header">Header</h1>
<p title="This is a paragraph."><a href="#">Link</a></p>
<input type="text" value="Text Input">
</body>
</html>
上述代码中,使用了CSS3中的各种选择符选择HTML元素,并为其添加了不同的样式。当访问HTML文件时,可以看到不同的HTML元素被添加了不同的样式。
6.2 示例二
下面是另一个示例,演示了如何使用CSS3中的选择符选择HTML元素。
<!DOCTYPE html>
<html>
<head>
<title>Example</title>
<style>
/* 选择所有段落元素 */
p {
color: red;
}
/* 选择类名为highlight的元素 */
.highlight {
background-color: yellow;
}
/* 选择ID为header的元素 */
#header {
font-size: 24px;
}
/* 选择所有带有title属性的元素 */
[title] {
border: 1px solid black;
}
/* 选择所有带有type属性为text的元素 */
[type=text] {
width: 200px;
}
/* 选择所有div元素内的段落元素 */
div p {
font-style: italic;
}
/* 选择所有div元素的直接子元素中的段落元素 */
div > p {
font-weight: bold;
}
/* 选择紧接着h1元素后面的段落元素 */
h1 + p {
color: blue;
}
/* 选择h1元素后面的所有段落元素 */
h1 ~ p {
text-decoration: underline;
}
/* 选择所有未被访问的链接 */
a:link {
color: green;
}
/* 选择所有已被访问的链接 */
a:visited {
color: purple;
}
/* 选择鼠标悬停在上面的元素 */
a:hover {
text-decoration: none;
}
/* 选择被激活的元素 */
a:active {
color: red;
}
/* 选择获得焦点的元素 */
input:focus {
background-color: lightblue;
}
/* 在元素的内容前面插入一个内容 */
p::before {
content: ">> ";
}
/* 在元素的内容后面插入一个内容 */
p::after {
content: " <<";
}
/* 选择元素的第一个字母 */
p::first-letter {
font-size: 24px;
}
/* 选择元素的第一行 */
p::first-line {
font-weight: bold;
}
/* 选择被用户选中的部分 */
::selection {
background-color: yellow;
color: black;
}
</style>
</head>
<body>
<div>
<p class="highlight" title="This is a paragraph.">Hello, World!</p>
<p>This is another paragraph.</p>
</div>
<h1 id="header">Header</h1>
<p title="This is a paragraph."><a href="#">Link</a></p>
<input type="text" value="Text Input">
</body>
</html>
上述代码中,使用了CSS3中的各种选择符选择HTML元素,并为其添加了不同的样式。当访问HTML文件时,可以看到不同的HTML元素被添加了不同的样式。
总结
CSS3中的选择符是用来选择HTML元素的一种方式,它可以根据元素的属性、位置、状态等进行选择。在使用CSS3中的选择符时,需要了解其基本选择符、组合选择符、属性选择符、伪类选择符和伪元素选择符等,并根据实际需求选择相应的选择符。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:细说CSS3中的选择符 - Python技术站