1、基本选择器
①标签选择器:通过标签名获取元素 0001
②class选择器:通过. 类名获取元素 0010
③id选择器:通过#id名获取元素 0100
④*通配符选择器:获取到页面的所有元素
⑤群组选择器:用逗号隔开基本选择器,表示这些选择器都获取到
2、层次(关系)选择器
①包含选择器:用空格隔开基本选择器,表示后一个选择器是前面的后代
②子代选择器:用>隔开基本选择器,表示后一个选择器是前面的子代(只选中第一代)
③相邻兄弟选择器:E+F:表示获取到E后面的紧跟着的F元素(同级的)
④兄弟选择器:E~F:表示获取到E后面所有的同级的F元素
3、属性选择器
①E[attr]:只使用属性名,但没有确定任何属性值。
②E[attr="value"]:指定属性名,并指定了该属性的属性值。
③E[attr^="value"]:指定了属性名,并且有属性值,属性值是以value开头的。
④E[attr$="value"]:指定了属性名,并且有属性值,而且属性值是以value结束的。
⑤E[attr*="value"]:指定了属性名,并且有属性值,而且属性中包含了value。
4、动态伪类选择器
①a:link 锚链接被访问前添加样式
②a:visited 锚链接被访问后添加样式
③e:hover 鼠标悬停在元素上添加样式
④e:active 鼠标点击元素时添加样式
⑤input:focus 表单元素被聚焦时,添加样式
5、目标伪类选择器
目标:target{}被选中的目标添加样式
6、ui元素状态伪类选择器
①E:enabled 可用的表单元素添加样式
②E:disabled 不可用的表单元素添加样式(disabled)
③E:checked 被选中的表单元素添加样式
④E:selection 元素内容被选中时添加样式(火狐需要加前缀-mos-)
7、结构伪类选择器
①E:first-child 获取到E元素,且要满足为其父元素的第一个孩子
②E:last-child 获取到E元素,且要满足为其父元素的最后一个孩子
③E:nth-child(n) 获取到E元素,且要满足为其父元素的第n个孩子
n的用法:①6n的倍数 ②even偶数 odd奇数 ③-n+5 选中1-5
④p:nth-child(-n+3):nth-child(n+2)第2-3个
④E:nth-last-child(n) 获取到E元素,且要满足为其父元素的倒数第n个孩子
⑤E:first-of-type 获取到E元素,且要满足为其父元素的第一个该类型的孩子
⑥E:last-of-type 获取到E元素,且要满足为其父元素的最后一个该类型的孩子
⑦E:nth-of-type(n) 获取到E元素,且要满足为其父元素的第n个该类型的孩子
⑧E:nth-last-of-type(n) 获取到E元素,且要满足为其父元素的倒数第n个该类型的孩子
⑨E:empty 获取到空的E元素(连空格都不能有)
8、伪元素
①E::before 给E元素添加第一个子元素
例:div::before{
content:“内容”
display:block;
width:100px;
height:100px;
}
②E::after 给E元素添加最后一个子元素
③E:first-letter 给E元素第一个字添加样式
④E:first-line 给E元素第一行添加样式