今天和大家一起聊聊CSS选择器
CSS选择器的种类
基础选择器
- 元素选择器
js
div {
color: pink;
}
- 类选择器
js
.div {
color: pink;
}
- ID 选择器
js
#div {
color: pink;
}
选择器优先级:元素选择器 < 类选择器 < ID 选择器 < 行内样式 < !important
组合选择器
后代选择器:选择某个元素下的所有指定元素。
js
div p {
margin: 10px;
}
子选择器:选择某个元素的直接子元素。
css
ul > li {
list-style-type: none;
}
相邻兄弟选择器:选择紧接着某个元素的下一个兄弟元素。
css
h1 + p {
color: red;
}
通用兄弟选择器:选择某个元素的所有兄弟元素。
css
h1 ~ p {
color: green;
}
属性选择器
存在属性选择器:选择具有某个属性的元素。
css
a[target] {
color: orange;
}
示例:
html
<a href="https://example.com" target="_blank">选中</a>
<a href="https://example.com">未选中</a>
js
a[target] {
color: pink; /* 所有具有 target 属性的链接颜色为pink*/
}
特定属性值选择器:选择具有特定属性值的元素。
css
input[type="text"] {
border: 1px solid black;
}
示例:
js
<input type="text" placeholder="输入文本">
<input type="password" placeholder="输入密码">
js
input[type="text"] {
border: 1px solid pink; /* 所有类型为 text 的输入框边框为pink */
}
伪类选择器
链接伪类:选择链接的不同状态。
css
a:link {
color: blue;
}
a:visited {
color: purple;
}
悬停伪类:选择鼠标悬停时的元素。
css
button:hover {
background-color: lightgray;
}
偶数和奇数伪类:选择偶数或奇数行。
css
tr:nth-child(even) {
background-color: #f2f2f2;
}
伪元素选择器
选择元素的一部分:
css
p::first-line {
font-weight: bold;
}
选择元素的特定部分:
css
p::before {
content: "Note: ";
font-weight: bold;
}