css子代选择器问题

css 子代选择器不是只能作用于亲儿子吗?为什么下面代码却能作用于其儿子的儿子

html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Documenttitle>
    <style type="text/css">
      .box>div{
       color: red;
       width: 50px;
       height: 20px;
       border: solid;
      }
    style>
  head>
  <body>
    <div class="box">
      <p>
        <div>你好div>
      p>
    div>
  body>
html>

显示结果

img

img

你审查元素 会发现 p 被解析 成两个 p了 。 因为 不建议 使用p元素 包裹div


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style type="text/css">
        .box>div {
            color: red;
            width: 50px;
            height: 20px;
            border: solid;
           
        }

       
    </style>
</head>

<body>
    <div class="box">
        <div>666</div>
        <span>
            <div>你好</div>
        </span>
    </div>
</body>

</html>