Skip to content

CSS 伪类和伪元素有哪些,它们的区别和实际应用

Posted on:2024年8月15日 at 23:21

CSS 伪类和伪元素用于选择和样式化 DOM 元素的特定状态或部分。它们有不同的作用和用法。以下是它们的区别、常见类型及实际应用:

CSS 伪类

伪类用于选择元素的特定状态或特性。例如:

  1. :hover - 选择当鼠标悬停在元素上时的状态。

    a:hover {
      color: red;
    }
    
  2. :focus - 选择当元素获得焦点时的状态,通常用于输入框。

    input:focus {
      border-color: blue;
    }
    
  3. :nth-child(n) - 选择父元素中第 n 个子元素。

    li:nth-child(2) {
      color: green;
    }
    
  4. :first-child - 选择父元素中的第一个子元素。

    p:first-child {
      font-weight: bold;
    }
    
  5. :last-child - 选择父元素中的最后一个子元素。

    p:last-child {
      margin-bottom: 0;
    }
    
  6. :not(selector) - 选择不匹配指定选择器的元素。

    div:not(.active) {
      opacity: 0.5;
    }
    
  7. :checked - 选择已选中的输入框(如复选框、单选框)。

    input:checked {
      background-color: yellow;
    }
    

CSS 伪元素

伪元素用于选择元素的特定部分,通常创建新的元素内容。例如:

  1. ::before - 在元素的内容之前插入内容。

    p::before {
      content: "Note: ";
      font-weight: bold;
    }
    
  2. ::after - 在元素的内容之后插入内容。

    p::after {
      content: " [end]";
      color: gray;
    }
    
  3. ::first-line - 选择元素的第一行文本。

    p::first-line {
      font-weight: bold;
    }
    
  4. ::first-letter - 选择元素的第一个字母。

    p::first-letter {
      font-size: 2em;
    }
    

区别

实际应用

原文转自:https://fe.ecool.fun/topic/efc1bdba-4ded-4d08-846c-cc98cd1d0d58