首页 > 代码库 > CSS选择器

CSS选择器

一、CSS基本选择器

1、标签选择器

a <a href=http://www.mamicode.com/”#”>word
p <p>p段落</p>
h1 <h1>标题文本</h1>

2、ID选择器

#p1 <p id=”p1”></p>
#p2 <p id=”p2”></p>

3、类选择器

.myclass <p class=”myclass”></p>
.myclass2 <p class=”myclass”></p>

二、CSS复合选择器

1、交集选择器

“交集”选择器由两个选择器直接连接构成,其结果是选中二者各自元素范围的交集。其中第一个必须是标记选择器,第二个必须是类别选择器或者ID选择器。这两个选择器直接不能有空格,必须连续书写。
这种方式构成的选择器,将选中同时满足前后二者定义的元素,也就是前者所定义的标记类型,并且指定了后者的类别或者ID的元素,因此被称为“交集”选择器。

h3.class#id
p.#id.class
a.class#id

2、并集选择器

与交集选择器相对应,并集选择器是多个选择器通过逗号连接而成的。

p,.class,#id
p,a,h1
.class,p,#id,h1,
#id,.class,p

3、后代选择器

后代选择器的写法就是把外层的标记写在前面,内层的标记写在后面,直接用空格分割
当标记发生嵌套时,内层的标记就称为外层标记的后代
需要注意:后代选择器产生的影响不仅限于元素的“直接后代”,而且会影响到它的“各级后代”。

p div span
p a div
#id span
.class #id span
div p span

4、子选择器

只对直接后代有影响的选择器,区别是使用大于号连接

p>span
p>div>span
p>a>div
#id>span
.class>#id>span
div>p

三、CSS的继承和层叠

1、继承的特性

CSS继承指的是子标记会继承父标记的所有样式风格,并可以在父标记样式风格的基础上再加以修改,产生新的样式,而子标记的样式风格完全不会影响父标记
CSS的继承贯穿整个CSS设计的始终,每个标记都遵循着CSS继承的概念
使用后代选择器的时候,不用每级标签都写,可以有简写的形式。
Ul li ul li ul li {color:Green; font-weight:bold;}
li li li {color:Green; font-weight:bold;}
以上两种写法是结果相同

2、层叠特性

CSS的层叠特性很重要,但是注意,千万不要和前面介绍的“继承”相混淆,二者有本质的区别。实际上,层叠可以简单理解为“冲突”的解决方案

总结:优先级的规则可以表述为
行内样式>ID样式>类别样式>标记样式
越特殊的样式,优先级越高。

3、样式分类

行内样式(内联样式)
Style=“”


内嵌样式
<style type=“text/css”></style>


外部样式
<link type=“text/css” href=http://www.mamicode.com/“URL” rel=“stylesheet” />


导入样式
@import url(filename);


优先级
行内>外部(链接)>内嵌>导入
就近原则

CSS选择器