css的高级选择器分为层次选择器和属性选择器。
1、层次选择器
层次选择器分为:后代选择器;子选择器;相邻选择器;通用选择器。
a)后代选择器(空格)
E F{声明语句;}
F被E包裹,先找F再找E。
b)子选择器(>)
E > F{声明语句;}
子选择器只能通过F往上找一层E,不同于后代选择器是先找到所有孙子F,然后找到对应的E。
c)相邻选择器(+)
.active + 元素{声明语句;}
作用于class=active的对应元素的相邻元素(下一个)
d)通用选择器(~)
.active ~ 元素{声明语句;}
作用于class=active的对应元素下面的所有兄弟同类
2、属性选择器
a)有
E[atter]——有atter属性的元素E
b)等于
E[atter="val"]——E元素的atter=val
c)开头
E[atter^="val"]——E元素的atter属性以val字段开头
d)结尾
E[atter$="val"]——E元素的atter属性以val字段结尾
e)含有
E[atter*="val"]——E元素的atter属性含有val字段
小技巧
ul>li*3{我是li$}
可变为
<ul>
<li>我是li1&/lt;li>
<li>我是li2&/lt;li>
<li>我是li3&/lt;li>
</ul>