一、属性选择器
css2:
[属性] ===》选取有这个属性节点
[属性=值] ==》选取这个属性等于这个值的节点
[属性~=值] ==》选取这个属性包含这个值的
[属性|=值] ==》选取这个属性以这个值开头的
css3:
[属性^=值] ==>这个属性的值以什么开头的
[属性$=值] ==>这个属性的值以什么结尾的
[属性*=值] ==>这个属性含有这个值的
二、伪类选择器
1》用户行为(动态) css2
a:link
a:hover
a:focus
a:visited
2》UI元素状态伪类选择器
:enabled ==》启用的
:disabled ==》禁用的
:checked ==》选中的
3》结构伪类选择器(nth选择器)
:first-child ==》选取第一个子元素
:last-child ==》选取最后一个子元素
:nth-child ==》选取特定元素(从头开始)
注意:
1》nth-child(2) ==>从1开始的
2》nth-child(2n) ==>倍数
3》nth-child中的n是几? 他是0!!
4》nth-child(n+5) ==>选取大于等于5的
5》nth-child(-n+5) ==》选取小于等于5的
:nth-last-child ===》选取特定元素(从后开始)
:first-of-type
:last-of-type
:nth-of-type
:nth-last-of-type
他是根据类型来选择器第几个子元素
比如div span:first-of-type{}
选取的是div下第一个span元素
:only-child ===>选择的元素是它的父元素的唯一一个子元素;
只能有一个元素
:only-of-type
选择一个元素是它的上级元素的唯一一个相同类型的子元素;
父元素下不管有什么多元素,只要只有一个p,div,span...就可以选取到
:empty选择的元素里面没有任何内容。