CSS选择器是一种用于选择和定位HTML元素的模式。通过使用不同类型的选择器,可以根据元素的标签名、类名、ID、属性等特征来选取目标元素,并对其应用相应的样式。以下是常见的CSS选择器:
CSS 元素选择器
元素选择器根据元素名称来选择 HTML 元素。
实例:
在这里,页面上的所有 <p> 元素都将居中对齐,并带有红色文本颜色:
p { text-align: center; color: red; }
CSS ID选择器
id 选择器使用 HTML 元素的 id 属性来选择特定元素。
元素的 id 在页面中是唯一的,因此 id 选择器用于选择一个唯一的元素!
要选择具有特定 id 的元素,请写一个井号(#),后跟该元素的 id。
实例:
这条 CSS 规则将应用于 id=”para1″ 的 HTML 元素:
#para1 { text-align: center; color: red; }
CSS类选择器
类选择器选择有特定 class 属性的 HTML 元素。
如需选择拥有特定 class 的元素,请写一个句点(.)字符,后面跟类名。
实例:
在此例中,所有带有 class=”center” 的 HTML 元素将为红色且居中对齐:
.center { text-align: center; color: red; }
还可以指定只有特定的 HTML 元素会受类的影响。
实例:
在这个例子中,只有具有 class=”center” 的 <p> 元素会居中对齐:
p.center { text-align: center; color: red; }
HTML 元素也可以引用多个类。
实例:
在这个例子中,<p> 元素将根据 class=”center” 和 class=”large” 进行样式设置:
<p class=”center large”>这个段落引用两个类。</p>
注意:类名不能以数字开头!
CSS 通用选择器
通用选择器(*)选择页面上的所有的 HTML 元素。
实例:
下面的 CSS 规则会影响页面上的每个 HTML 元素:
* { text-align: center; color: blue; }
CSS 分组选择器
分组选择器选取所有具有相同样式定义的 HTML 元素。
请看下面的 CSS 代码(h1、h2 和 p 元素具有相同的样式定义):
h1 { text-align: center; color: red; } h2 { text-align: center; color: red; } p { text-align: center; color: red; }
最好对选择器进行分组,以最大程度地缩减代码。
如需对选择器进行分组,请用逗号来分隔每个选择器。
实例:
在这个例子中,我们对上述代码中的选择器进行分组:
h1, h2, p { text-align: center; color: red; }
CSS 属性选择器
可以设置带有特定属性或属性值的 HTML 元素的样式。
CSS [attribute] 选择器
[attribute] 选择器用于选取带有指定属性的元素。
下例选择所有带有 target 属性的 <a> 元素;
实例:
a[target] { background-color: yellow; }
CSS [attribute=”value”] 选择器
[attribute=”value”] 选择器用于选取带有指定属性和值的元素。
下例选取所有带有 target=”_blank” 属性的 <a> 元素:
实例:
a[target="_blank"] { background-color: yellow; }
CSS [attribute~=”value”] 选择器
[attribute~=”value”] 选择器选取属性值包含指定词的元素。
下例选取 title 属性包含 “flower” 单词的所有元素:
实例:
[title~="flower"] { border: 5px solid yellow; }
上面的例子会匹配以下属性的元素:title=”flower”、title=”summer flower” 以及 title=”flower new”,但不匹配:title=”myflower” 或 title=”flowers”。
CSS [attribute|=”value”] 选择器
[attribute|=”value”] 选择器用于选取指定属性以指定值开头的元素。
下例选取 class 属性以 “top” 开头的所有元素:
注释:值必须是完整或单独的单词,比如 class=”top” 或者后跟连字符的,比如 class=”top-text”。
实例:
[class|="top"] { background: yellow; }
CSS [attribute^=”value”] 选择器
[attribute^=”value”] 选择器用于选取指定属性以指定值开头的元素。
下例选取 class 属性以 “top” 开头的所有元素:
提示:值不必是完整单词!
实例:
[class^="top"] { background: yellow; }
CSS [attribute$=”value”] 选择器
[attribute$=”value”] 选择器用于选取指定属性以指定值结尾的元素。
下例选取 class 属性以 “test” 结尾的所有元素:
提示:值不必是完整单词!
实例:
[class$="test"] { background: yellow; }
CSS [attribute*=”value”] 选择器
[attribute*=”value”] 选择器选取属性值包含指定词的元素。
下例选取 class 属性包含 “te” 的所有元素:
提示:值不必是完整单词!
实例:
[class*="te"] { background: yellow; }
设置表单样式
若需为不带 class 或 id 的表单设置样式,属性选择器会很有用:
实例:
input[type="text"] { width: 150px; display: block; margin-bottom: 10px; background-color: yellow; } input[type="button"] { width: 120px; margin-left: 35px; display: block; }