Skip to content

CSS 选择器

选择器是 CSS 的核心。它们是用来“选择”或“定位”你想要应用样式的 HTML 元素的模式。掌握了选择器,你就能精确地控制页面上任何一个元素的样式。

基础选择器

1. 元素选择器 (Element Selector)

也称为类型选择器,它会选择指定类型的所有 HTML 元素。

css
/* 选择页面上所有的 <p> 元素 */
p {
  color: gray;
}

2. 类选择器 (Class Selector)

类选择器会选择所有带有特定 class 属性的元素。它以一个点 (.) 开头。

html
<p class="highlight">这是一个高亮的段落。</p>
<div class="highlight">这是一个高亮的 div。</div>
css
/* 选择所有 class="highlight" 的元素 */
.highlight {
  background-color: yellow;
}

一个元素可以有多个类,用空格隔开,例如 class="highlight important"

3. ID 选择器 (ID Selector)

ID 选择器会选择一个带有特定 id 属性的元素。它以一个井号 (#) 开头。在一个 HTML 文档中,每个 id 必须是唯一的。

html
<div id="main-content">...</div>
css
/* 选择 id="main-content" 的元素 */
#main-content {
  border: 1px solid black;
}

由于其唯一性,ID 选择器的特殊性(优先级)非常高。

4. 属性选择器 (Attribute Selector)

属性选择器会选择所有带有特定属性或属性值的元素。它使用方括号 ([])。

css
/* 选择所有带有 target="_blank" 属性的 <a> 元素 */
a[target="_blank"] {
  color: red;
}

/* 选择所有带有 title 属性的元素 */
[title] {
  cursor: help;
}

5. 通用选择器 (Universal Selector)

通用选择器是一个星号 (*),它会选择页面上的所有元素。它通常用于设置全局的样式重置。

css
/* 将所有元素的内外边距都设置为 0 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; /* 一个常见的全局设置 */
}

分组选择器 (Grouping Selector)

如果你想为多个不同的选择器应用相同的样式,可以用逗号 (,) 将它们分组,以减少代码重复。

css
/* 将 h1, h2, h3 的颜色都设置为蓝色 */
h1, h2, h3 {
  color: blue;
}

这比分开写要简洁得多:

css
/* 不推荐的写法 */
h1 {
  color: blue;
}
h2 {
  color: blue;
}
h3 {
  color: blue;
}

掌握这些基础选择器是学习 CSS 的第一步。在后续的章节中,我们还会学习更高级的选择器,如组合选择符、伪类和伪元素,它们能让你进行更复杂、更精确的元素选择。

本站内容仅供学习和研究使用。