1. 类选择器 .
.xxx{ } 用class=“ ”
2. ID选择器#
#xxx{ } 用id=“ ”
3. 普遍选择器
布局中经常用到的
{ }
.xxx{ }代表类选择器
.xxx > * { } 代表xxx下的所有直接孩子 >代表父子类
.xxx > span{ } 代表选中xxx下的所有span直接孩子
.xxx span{ } 代表选中xxx下后代中的所有span
.xxx .yyy{ } 嵌套选择器 交集
.xxx,.yyy{ } 组合选择器 并集
div.xxx{ } 选中div中class为xxx的
4. 层次选择器
.xxx span{ } 空格代表后代 代表xxx下的span后代
.xxx>span{ } >代表子代 代表xxx下的所有span孩子
.xxx+span{ } +代表下一个兄弟元素 相连的元素
.xxx~span{ } ~代表之后的所有的兄弟元素
5. 属性选择器
div,span{ } 并集
[title] 选中有title属性的
div[title] 选中div中有title属性的
div[title=one] 选中div中有title属性的,并且属性值是one的
div[title^=t] 选中div中有title属性以t开头的 ^开头
div[title$=e] 选中div中有title属性以e结尾的 $结尾
div[title*=o] 选中div中有title属性的,值中包含o的 *包含
[class*=header] 选中class属性中有header属性值的元素
[type=radio][checked] 选中默认选中的radio
6. 伪类选择器
.xxx>:first-child{ } 选中每个xxx中的第一个元素
.xxx>:last-child{ } 选中每个xxx中的最后一个元素
.xxx>:nth-child(y){ } 选中每个xxx中的第y个元素 nth第几个元素
参数可以使自然数1,2,3…也可以是odd奇数,even是偶数关键字,还可以是3n+1…
.xxx>:nth-last-child(2) { } 选中每个xxx中的倒数第二个元素
.xxx>:first-of-type { } 选中每个xxx中的每种类型中的第一个孩子元素
.xxx>:last-of-type{ } 选中每个xxx中的每种类型中的最后一个孩子元素
.xxx>*:nth-of-type(y){ } 选中每个xxx中的每种类型中的第y个孩子元素
7. a标签伪类选择器
a:link{ } 未访问过
a:visited{ } 已访问过
a:hover{ } 悬停
a:active{ } 点击活动
8. 表单伪类选择器
input[name=username]:focus{ } 设置input的聚焦样式
input[type=text]:disabled{ } 选择禁用的元素
input[type=text]:enabled{ } 选择可用的元素
input[name=username]:valid{ } 对用户名进行简单验证,验证通过
input:required{ } 选中所有必填项
input:optional{ } 选中所有选填项
input[type=number]:in-range{ } 在范围内的样式
input[type=number]:out-of-range { } 在范围外的样式
9. 伪元素选择器
section div::before{ } 在所有的div之前操作
section div::after{ } 在所有的div之后操作
section div::first-letter{ } 选中div中的第一个字符,
section div::first-line{ } 选中div中的第一行文本
div::selection{ } 选中用户选择的文本