层级选择器
E>F
子选择器
选择匹配的F元素,且匹配的F元素所匹配的E元素的子元素
div>em{ color: red; }
1
HTML代码:
我是标题
我第1个是p标签
我第1个是em标签 我是小标题 我第2个是em标签 我第3个是em标签E+F
相邻兄弟选择器
选择匹配的F元素,且匹配的F元素紧位于匹配的E元素的后面
div+p{ color: blue; }
1
HTML代码:
我是标题
我第1个是p标签
我第1个是em标签我就是紧贴在div元素后面的第一个p元素
我就是紧贴在div元素后面的第二个p元素
E~F
通用选择器
选择匹配的F元素,且位于匹配的E元素后的所有匹配的F元素
div~p{ color:blue;}
1
HTML代码:
我是标题
我第1个是p标签
我第1个是em标签我就是紧贴在div元素后面的第一个p元素
我就是紧贴在div元素后面的第二个p元素
二结构性伪类选择器
X:first-child 匹配子集的第一个元素。IE7就可以支持
X:last-child匹配父元素中最后一个X元素
X:nth-child(n)用于匹配索引值为n的子元素。索引值从1开始
X:only-child这个伪类一般用的比较少,比如上述代码匹配的是div下的有且仅有一个的p,也就是说,如果div内有多个p,将不匹配。
X:nth-last-child(n)从最后一个开始算索引。
X:first-of-type匹配同级兄弟元素中的第一个X元素
X:last-of-type匹配同级兄弟元素中的最后一个X元素
X:nth-of-type(n)匹配同类型中的第n个同级兄弟元素X
X:only-of-type匹配属于同类型中唯一兄弟元素的X
X:nth-last-of-type(n) 匹配同类型中的倒数第n个同级兄弟元素