周老师讲:CSS基本选择器

234 阅读3分钟

1. 基本选择器

选择器 名称 描述 css版本
*{} 通用/全部 选择所有元素 2
tag{} 元素/标签 指定元素/标签的元素 1
#id{} 编号/ID 指定ID属性的元素 1
.class{} 类/class 指定class属性的元素 1
[attr]系列 属性 指定attr属性的元素 2-3

2. 全部选择器

当我们想抓取页面上所有元素的时候,可以使用全部选择器。全部选择器使用简单,但是因为经常会匹配到无关显示的元素(如 <html><head> 等),所以不太常用。

布局:

<p>羌笛何须怨杨柳</p>
<div>春风不度玉门关</div>

样式:

*{ 
    background-color:red;
}

3. TAG选择器

当我们想抓取页面上某些相同标签的元素时,可以通过标签选择器来直接抓取它们。

布局:

<p>日照香炉生紫烟</p>
<p>遥看瀑布挂前川</p>
<div>飞流直下三千尺</div>
<div>疑是银河落九天</div>

样式:

p{ 
background-color: red;
}
div{ 
background-color: green;
}

4. ID选择器

如果我们想单独抓取某一个页面上的元素,而无关它的标签,那么我们可以给这个元素添加一个id值,然后使用ID选择器来抓取它。

css对重复id的情况的处理方案是,全部选中。

布局:

<p id="part1">死去元知万事空</p>
<p id="part2">但悲不见九州同</p>
<p id="part3">王师北定中原日</p>
<p id="part4">家祭无忘告乃翁</p>

<div>葡萄美酒夜光杯</div>
<div>欲饮琵琶马上催</div>
<div id="part1">醉卧沙场君莫笑</div>
<div>古来征战几人回</div>

样式:

#part2{ 
color:red;
}
#part1{ 
color:green;
}

5. Class选择器

当我们想抓取页面上的某一些元素,而无关它们的类型的时候,我们可以给这些元素添加一些相同值的 class 属性,然后通过class选择器来抓取它们。

布局:

<p class="tored">朝辞白帝彩云间</p>
<p>千里江陵一日还</p>
<div class="tored">两岸猿声啼不住</div>
<div >轻舟已过万重山</div>

样式:

.tored{ 
background-color:red;
}

我们可以对同一个元素添加多种class,值和值之间用空格隔开。

布局:

<p class="tored">月落乌啼霜满天</p>
<p>江枫渔火对愁眠</p>
<div class="tored towhite">姑苏城外寒山寺</div>
<div>夜半钟声到客船</div>

样式:

.tored{ 
background-color:red;
}
.towhite{ 
color:white;
}

6. 属性选择器

如果我们想通过一些对元素属性的过滤来锁定某个或某些元素,则可以使用属性选择器。

选择器 描述 举例
[attr]{} 匹配拥有attr属性名的所有元素 [href]{}
[attr=value]{} 匹配拥有attr=value键值对的所有元素 [href="#1"]{}
[attr^=value]{} 匹配拥有attr的属性值以value开头的所有元素 [href^="http:"]{}
[attr$=value]{} 匹配拥有attr的属性值以value结尾的所有元素 [href$=".com"]{}
[attr*=value]{} 匹配拥有attr的属性值包含value的所有元素 [href*="baidu"]{}
[attr~=value]{} 匹配当属性值具有多个值时,其中一个是value的 [class~="abc"]{}
[attr|=value] 匹配按照"-"符分割后的其中一个值是value的 [lang|="en"]

布局:

<a class="a b c">这是一个没有href的超链接</a><br />
<a class="b">这是一个没有href的超链接</a><br />
<a href="
http://www.baidu.com">点我跳入百度</a><br />
<a href="
http://www.w3school.com">点我跳入w3school</a><br />
<a href="a.html">点我跳入a.html</a><br />
<h1 lang="en-US">I am a teacher!</h1>

样式:

[href]{ color:red;}
[class="b"]{ color:green;}
[href^="http://"]{ color:yellow;}
[href$=".com"]{ color:wheat;}
[href*="a"]{ color:#FF9800;}
[class~="b"]{ color:blue;}
[lang|="en"]{ color:deeppink;}