基本选择器
通用选择器:* 选择到所有的元素
选择子元素:> 选择到元素的直接后代
相邻兄弟选择器:+ 选择到紧随目标元素后的第一个元素
普通兄弟选择器:~ 选择到紧随其后的所有兄弟元素
:nth-child 选择指定索引处的子元素
nth-child(n) 父元素下的第n个子元素
nth-child(odd)奇数子元素
nth-child(even)偶数子元素
:nth-last-child(n) 倒数第n个子元素
:nth-of-type(n) 父元素下的第n个指定类型的子元素
:nth-last-of-type父元素下的倒数第n个指定类型的子元素
:first-child 选择父元素下的第一个子元素
:last-child 选择父元素下的最后一个子元素
:only-child 选择父元素下唯一的子元素
:only-of-type选择父元素下指定类型的唯一子元素
:root 选择文档的根目录,返回html
属性选择器
E[attr] 属性名,不确定具体属性值
E[attr="value"] 指定属性名,并指定其对应属性值
E[attr ~="value"] 指定属性名,其具有多个属性值空格隔开,并包含value值
E[attr ^= "value"] 指定属性名,属性值以value开头
E[attr $="value"] 指定属性名,属性值以value结束
E[attr *="value"] 指定了属性名,属性值中包含了value
E[attr |= "value"] 指定属性名,属性值以value-开头
伪类与微元素
UI伪类选择器
:enabled 选择启用状态元素
:disabled 选择禁用状态元素
:checked 选择被选中的input元素(单选按钮或复选框)
:default 选择默认元素
:valid、invalid 根据输入验证选择有效或无效的input元素
:in-range、out-of-range 选择指定范围之内或者之外受限的元素
:repuired、optional 根据是否允许:required属性选择input元素
动态伪类选择器
:link 选择链接元素
:visited 选择用户以访问的元素
:hover 鼠标悬停其上的元素
:ative 鼠标点击时触发的事件
:focus 当前获取焦点的元素
:not(<选择器>) 对括号内选择器的选择取反
:lang(<目标语言>) 基于lang全局属性的元素
:target url片段标识符指向的元素
:empty选择内容为空的元素
:selection 鼠标光标选择元素内容
伪元素
::after(在元素之后添加,一般用于清除浮动)
::before(在元素之钱添加)
::firstLetter(首字母)
::firstLine(第一行)
::selection(文本选中的时候颜色和背景)
声明的优先级
01,id选择器:0,1,0,0
02,类选择器,属性选择器,伪类:0,0,1,0
03,标签选择器,伪元素选择器:0,0,0,1
04,通配符:0,0,0,0
05,结合符【’.’,’~’,’+’,’>’…】没有特殊性
06,内联声明:1,0,0,0
07,继承没有特殊性