css3选择器主要分为:
一:属性选择器
二:伪类选择器
三:层级选择器
其中伪类选择器大概分为以下几类:
1:结构伪类选择器
2:元素伪类选择器
3:目标伪类选择器
4:动态伪类选择器
一:属性选择器
1: 选择符[属性名]
说明:只要带有当前属性名就会被选中。
2: 选择符[属性名=“属性值”]
说明:不仅制定属性名,有指定属性值(如属性值有多个则无效,例如:class=“box1 box2”)
3: 选择符[属性名~=“属性值”]
说明:属性值为一个词列表(一个属性有多个属性名),只要包含当前词就会被选中
4: 选择符[属性名^=“属性值”]
说明:属性值必须是当前指定的属性值开头的(只要属性值开头有对应的字符即可)
5:选择符[属性名$=“属性值”]
说明:属性值必须是当前指定的属性值结尾的(只要属性值结尾有对应的字符即可)
6: 选择符[属性名*=“属性值”]
说明:属性值中只要包含了指定的字符就会被选中(不需要完整一模一样的属性值)
7: 选择符[属性名|=“属性值”]
说明:属性值仅是当前指定的属性值,或者是以属性值- 开头 (例: left-con )
二-1:伪类选择器-结构伪类选择器
使用过程中分为2种情况:
I:如果子集标签类型一致(类名一致)的情况下:采用的是 child
1 : 选择符:first-child{ }
说明:选中该子集第一个元素
2 : 选择符:last-child{ }
说明:选中该子集最后一个元素
3 : 选择符:nth-child(val){}
说明:选中该子集的某个元素
val :
可以是某个数值 表示第几个
2n 或者 even 偶数(选中所有偶数)
2n + 1 或者 odd 奇数(选中所有奇数)
4 : 选择符:nth-last-child(){}
说明:倒数第几个
5 : 选择符:only-child{}
说明:当前子集只有一个元素的时候才会被选择
II:如果子集合标签类型不一致(类名不一致)的情况下:采用的是 of-type
of-type 先确定类型,把不同类型的先剔除。剩下同类的进行第几个选择。
1 : 选择符:first-of-type{ }
2 : 选择符:last-of-type{ }
3 : 选择符:nth-of-type(val){}
val :
可以是某个数值 表示第几个
2n 或者 even 偶数
2n + 1 或者 odd 奇数
4 : 选择符:nth-last-of-type(){} 倒数第几个
5 : 选择符:only-of-type{} 当前子集只有一个元素的时候才会被选择
二-2:伪类选择器-元素伪类选择器
E代表的是选择符
1:E:enabled
匹配所有用户界面(form表单)中处于可用状态的E元素
2:E:disabled
匹配所有用户界面(form表单)中处于不可用状态的E元素
3:E:checked
匹配所有用户界面(form表单)中处于选中( 单选、多选 )状态的元素E
4:E::selection(这里必须是双冒号)
匹配E元素中被用户选中或处于高亮状态的部分(只能修改颜色和背景)
二-3:伪类选择器-目标伪类选择器
目标伪类选择器:
选择符:target{
}
:当元素被相关连接(锚点)指向的时候,放生css样式的改变!
二-4:伪类选择器-动态伪类选择器
E:link
链接伪类选择器
选择匹配的E元素,而且匹配元素被定义了超链接并未被访问过。常用于链接描点上
E:visited
链接伪类选择器
选择匹配的E元素,而且匹配元素被定义了超链接并已被访问过。常用于链接描点上
E:active
用户行为选择器
选择匹配的E元素,且匹配元素被**。常用于链接描点和按钮上
E:hover(常用)
用户行为选择器
选择匹配的E元素,且用户鼠标停留在元素E上并在停留时更改显示样式。
IE6及以下浏览器仅支持a:hover
E:focus
用户行为选择器
选择匹配的E元素,而且匹配元素获取焦点(聚焦时改变样式)
三:层级选择器
父元素>子元素{}
说明:只能选择父元素的最近的一层子元素。
兄弟元素 + 兄弟元素{}
说明:通过当前的元素 选择符 离她最近的的兄弟元素,只能选中一个。
例:
此图中,只会选中每个p下面最近的第一个h2兄弟元素(如:第一个p下面有3个h2兄弟元素,只会选中第一个h2)
兄弟元素 ~ 兄弟元素{}
说明:通过当前的元素 选择符 离她最近的的兄弟元素下面的所有元素。
例:
在此图中,会选中每个p下面的H2所有的兄弟元素改变背景颜色为红色