这里面平时不太经常使用的选择器有相邻后面兄弟选择器和通用后面兄弟选择器
首先,不少资料上把它们叫作相邻兄弟选择器和通用兄弟选择器,我以为这样会有必定的误导意义,
例如:
`css
<ul> <li class="l1">1</li> <li class="l2">2</li> <li class="l3">3</li> <li class="l4">4</li> <li class="l5">5</li> <li class="l6">6</li> <li class="l7">7</li> <li class="l8">8</li> <li class="l9">9</li> </ul> li { list-style: none; height: 20px; width: 20px; background: red; margin: 10px; border-radius: 10px; text-align: center; color: white; float: left; line-height: 20px; }
`html
当使用相邻兄弟选择器时:css3
.l3 + li { background: green; }
效果为:spa
能够看出相邻兄弟选择器只会选择它后面的一个兄弟元素。
当使用通用兄弟选择器:code
.l3 ~ li { background: green; }
效果为:htm
能够看出来通用兄弟选择器会选择它后面全部的兄弟元素blog
属性选择器中有波浪(〜)时属性值有value时就相匹配,没有波浪(〜)时属性值要彻底是value时才匹配图片
动态伪类ci
在连接中常看到的锚点伪类:link、visited、hover、activeget
UI元素状态伪类
例如 :enabled,:disabled,:checked等,这些主要是对一些表单元素操做。
比较常见的如"type="text"有enable和disabled两种状态,前者为可写状态后者为不可写状态。
根据样式所在位置,对元素的影响也有关系:内联样式(标签内style形式) > style标签 > link标签
根据选择器的类型,id选择器 > 类、属性选择器和伪类选择器 > 元素和伪元素
通常来讲咱们的计算方式为,从0开始,一个行内样式+1000,一个id+100,一个属性选择器/class或者伪类+10,一个元素名,或者伪元素+1