CodeGym /课程 /Frontend SELF ZH /组合选择器

组合选择器

Frontend SELF ZH
第 12 级 , 课程 5
可用

5.1 选择器类型

CSS中的组合选择器允许根据它们在DOM树中的相对位置选择元素。它们提供了更精细的样式控制,可以根据元素的上下文对其进行样式设置。在CSS中,有几种类型的组合选择器:后代子元素相邻兄弟元素一般兄弟元素

组合选择器类型:

  • 后代选择器 (Descendant Selector)
  • 子元素选择器 (Child Selector)
  • 相邻兄弟选择器 (Adjacent Sibling Selector)
  • 一般兄弟选择器 (General Sibling Selector)

5.2 后代选择器

后代选择器选择的是所有是指定元素的后代的元素。后代是指所有位于指定元素内部的元素在任何嵌套层级 (不仅限于子代,还包括孙代和重孙代)。

语法:

    
      父元素 后代元素 {
        属性: ;
        属性: ;
      }
    
  

示例:

CSS
    
      /* 选择所有位于 <div> 内的 <p> */
      div p {
        color: blue;
      }
    
  
HTML
    
      <div>
        <p>这个段落将是蓝色的。</p>
        <div>
          <p>这个段落也会是蓝色的,因为它是 “div” 的后代。</p>
        </div>
      </div>
      <p>这个段落将不会是蓝色的。</p>
    
  

5.3 子元素选择器

子元素选择器仅选择作为指定父元素的直接子元素的元素。

语法:

    
      父元素 > 子元素 {
        属性: ;
        属性: ;
      }
    
  

示例:

CSS
    
      /* 选择仅作为 .container 的直接子元素的 <p> */
      .container > p {
        color: green;
      }
    
  
HTML
    
      <div class="container">
        <p>这个段落将是绿色的。</p>
        <div class="wrapper">
          <p>这个段落将不会是绿色的,因为它不是 .container 的直接子元素。</p>
        </div>
        <p>这个段落将是绿色的。</p>
      </div>
      <p>这个段落将不会是绿色的。</p>
    
  

5.4 相邻兄弟选择器

相邻兄弟选择器选择紧接在指定元素之后的元素,并且处于同一嵌套层级

语法:

    
      前一个 + 后一个 {
        属性: ;
        属性: ;
      }
    
  
CSS
    
      /* 选择紧接在 <h1> 之后的 <p> */
      h1 + p {
        color: red;
      }
    
  
HTML
    
      <h1>标题 1</h1>
      <p>这个段落将是红色的,因为它紧接在 “h1” 之后。</p>
      <p>这个段落将不会是红色的。</p>
    
  

5.5 一般兄弟选择器

一般兄弟选择器选择所有元素,这些元素位于指定元素之后,并且处于同一嵌套层级。

语法:

    
      前一个 ~ 后一个 {
        属性: ;
        属性: ;
      }
    
  

示例:

CSS
    
      /* 选择所有位于 <h1> 之后且处于同一嵌套层级的 <p> */

      h1 ~ p {
        color: purple;
      }
    
  
HTML
    
      <h1>标题 1</h1>
      <p>这个段落将是紫色的。</p>
      <p>这个段落也将是紫色的。</p>
      <div>
        <p>这个段落将不会是紫色的,因为它在不同的嵌套层级。</p>
      </div>
    
  
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION