美文网首页
css3新增的伪类,nth-child() 与 nth-of-t

css3新增的伪类,nth-child() 与 nth-of-t

作者: McDu | 来源:发表于2019-05-30 11:43 被阅读0次

    新增伪类

    1. elem:nth-child(n) 选中父元素下的第n个子元素,n可以接受具体的数
      值,也可以接受函数。
    2. elem:nth-last-child(n) 作用同上,不过是从后开始查找。
    3. elem:last-child 选中最后一个子元素。
    4. elem:only-child 如果elem是父元素下唯一的子元素,则选中之。
    5. elem:nth-of-type(n) 选择器匹配属于父元素的 特定类型(必须为标签类型,如 div、p、span) 的第 n 个子元素的每个元素。
    6. elem:first-of-type 选中父元素下第一个elem类型元素。
    7. elem:last-of-type 选中父元素下最后一个elem类型元素。
    8. elem:only-of-type 如果父元素下的子元素只有一个elem类型元素,则选中该元素。
    9. elem:empty 选中不包含子元素和内容的elem类型元素。
    10. elem:target 选择当前活动的elem元素。
    11. :not(elem) 选择非elem元素的每个元素。
    12. :enabled 控制表单控件的禁用状态。
    13. :disabled 控制表单控件的禁用状态。
    14. :checked 单选框或复选框被选中。

    举例详解

    1. nth-child

    :nth-child(n) 选择器匹配属于其父元素的第 n 个子元素n 可以是数字、关键词或公式
    比如下面一段结构:

      <div class="box">
          <div class="item">1</div>
          <div class="item">2</div>
          <p class="item">3</p>
          <p class="item">4</p>
          <div class="item">5</div>
          <div class="item-div">6</div>
          <div class="item-div">7</div>
          <div class="item-div">8</div>
      </div>
    

    给类名为 item 的元素加上一个背景色:

    .item:nth-child(3) {
       background-color: #f7c892;
    }
    

    2. nth-of-type

    :nth-of-type(n) 选择器匹配属于父元素的 特定类型(必须为标签类型,如 div、p、span) 的第 n 个子元素的每个元素。
    同样上面的例子,继续加样式:

    .item:nth-of-type(2) {
       background-color: #56824b;
    }
    

    .item 所在的元素类型有 divp,所以命中第二个 divp 标签的类名为 item 的元素。

    .item-div:nth-of-type(4) {
       background-color: #986244;
    }
    

    .item-div 所在的元素类型有 div,所以命中第四个 div 且类名为 .item-div的元素。


    试验田:
    https://jsfiddle.net/n8f05sb6/7/
    参考文章:
    CSS3伪类选择器nth-child和nth-of-type浅析

    相关文章

      网友评论

          本文标题:css3新增的伪类,nth-child() 与 nth-of-t

          本文链接:https://www.haomeiwen.com/subject/wrkmtctx.html