zoukankan      html  css  js  c++  java
  • 伪类和伪元素

    一、伪类(pseudo classes)

      用于已有元素处于某种状态时为其添加对应的样式,但是通过DOM树又无法表示这种状态,就可以通过伪类来为其添加样式。

      例如:当用户悬停在指定元素时,可以通过:hover来描述这个元素的状态,虽然它和一般CSS相似,可以为已有元素添加样式,但是它只有处于DOM树无法描述的状态下才能为元素添加样式。

     

      比如使用:nth-child()伪类实现表格的斑马纹 

    1 table tr:nth-child(2n) td{
    2     background-color: #ccc;
    3 }
    4 table tr:nth-child(2n+1) td{
    5     background-color: #fff;
    6

      将所有偶数行背景色设置为#ccc,将所有奇数行背景色设置为#fff。

    二、伪元素(pseudo elements)

      用于创建一些不在DOM树中的元素,并为其添加样式。

      例如:我们可以通过:before来在一个元素之前添加一些文本,并为这些文本添加样式,虽然用户可以看见这些文本,但是它实际上并不在DOM文档中。

      比如使用before伪元素添加文字

      HTML为:

    <div class="user">World!</div>

      CSS为:

    .user::before{
        content: "Hello";
    }

      结果为:

    三、区别

      伪类与伪元素的主要区别在于:有没有创建一个DOM树之外的元素。

      伪类:用于已有元素处于某种状态时为其添加对应的样式。

      伪元素:用于创建一些不在DOM树中的元素。

        可以同时使用多个伪类,但是只能同时使用一个伪元素。

  • 相关阅读:
    语法树,短语,直接短语,句柄2.0
    语法树,短语,直接短语,句柄
    2.理解文法和语文
    编译原理的学习 No.1
    第一次个人编程作业
    Arduboy基本操作(二)
    Arduboy基本用法(一)
    物理存储管理实训题
    创建和管理用户作业
    PL/SQL语言基础
  • 原文地址:https://www.cnblogs.com/gg-qq/p/13630485.html
Copyright © 2011-2022 走看看