css3选择器

根据css选择器的难易程度,我们可以把css选择器分为三类,第一类是基本选择器,第二类是属性选择器,第三类是伪类选择器。

下面是我对三种选择器的使用方法做个简单总结。

一. 基本选择器

    1. 通配符选择器(*)

    2. 元素选择器(E)

    3. 类选择器(.className)

    这里包括多类选择器(.className1.className2) 如:.first.last{color:red;}

    4. ID选择器(#ID)

    5. 后代选择器(E F)

    6. 子元素选择器(E > F)IE6不支持

    7. 相邻兄弟元素选择器(E + F)IE6不支持

    8. 通用兄弟选择器(E ~ F) IE6不支持 CSS3新增

    9. 群组选择器(selector1,selector2...selectorN)

注:相邻兄弟元素选择器和通用兄弟选择器的区别

  相邻兄弟元素选择器是:选择紧接在一个元素后面的元素,而且他们具有相同的父元素。

  通用兄弟选择器是:选择某元素后面的所有兄弟元素,而且他们具有相同的父元素。

二. 属性选择器

    1. E[attr]:只使用属性名,但没有属性值;

    2. E[attr="value"]:指定属性名,并指定了属性值;

    3. E[attr~="value"]:指定属性名,并指定了属性值;此属性值是一个词列表,并以空格隔开,其中词列表中包含了一个value词;

    4. E[attr^="value"]:指定属性名,并指定了属性值;属性值是以value开头;

  5. E[attr$="value"]:指定属性名,并指定了属性值;属性值是以value结尾;

    6. E[attr*="value"]:指定属性名,并指定了属性值;属性值中包含value;

    7. E[attr|="value"]:指定属性名,并指定了属性值;属性值是value或者以“value”开头的值;

 注:IE6不支持所有属性选择性

三. 伪类

    :hover在IE6下只有a元素支持,:active 和 :focus在IE6-7下不被支持。

    :checked, :enabled,  :disabled这三种选择器不被IE6-8支持。

    :fist-child选择某个元素的第一个子元素;

    :last-child选择某个元素的最后一个子元素;

    :nth-child()选择某个元素的一个或多个特定的子元素;

    :nth-last-child()选择某个元素的一个或多个特定的子元素,从这个元素的最后一个子元素开始算;

    :nth-of-type()选择指定的元素;

    :nth-last-of-type()选择指定的元素,从元素的最后一个开始计算;

    :first-of-type选择一个上级元素下的第一个同类子元素;

    :last-of-type选择一个上级元素的最后一个同类子元素;

    :only-child选择的元素是它的父元素的唯一一个了元素;

    :only-of-type选择一个元素是它的上级元素的唯一一个相同类型的子元素;

    :empty选择的元素里面没有任何内容。

原文地址:https://www.cnblogs.com/sensualgirl/p/3691892.html