为什么在CSS中使用">"?

imk*_*dal 12 html css paradigms styles

如果我想为div中的所有p元素添加样式,我为什么要使用它

div > p{

  *style here*

}
Run Code Online (Sandbox Code Playgroud)

而不是公正的

div p{

  *style here*

}
Run Code Online (Sandbox Code Playgroud)

此外,如果我想使用伪类,为什么我会选择使用">"

div > p:first-child{

  *style here*

}
Run Code Online (Sandbox Code Playgroud)

代替

 div p:first-child{

   *style here*

 }
Run Code Online (Sandbox Code Playgroud)

有任何好处或缺点吗?那个运营商做了什么?

Gab*_*abe 17

这是直接的孩子,而不是递归的匹配.

CSS

div > p {

}
Run Code Online (Sandbox Code Playgroud)

HTML

<div>
   <p>Match</p>
   <span>
      <p>No match</p>
   </span>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

div p {

}
Run Code Online (Sandbox Code Playgroud)

标记

<div>
   <p>Match</p>
   <span>
      <p>Match</p>
   </span>
</div>
Run Code Online (Sandbox Code Playgroud)