我很难理解为什么margin: 1rem不应用于我的页脚元素.修改大小时,仅修改article div和aside元素<p>中的文本内容.footer文本与顶部和底部的背景色之间没有边距,仅在左侧和右侧.有人能告诉我是什么原因吗?谢谢

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <style>
      body {
        background-color: pink;
      }
      section {
        background-color: lightgray;
        max-width: 1000px;
        box-sizing: border-box;
      }

      .article {
        background-color: lightyellow;
        width: 70%;
        float: left;
        margin: 0;
      }

      aside {
        background-color: lightgreen;
        float: right;
        float: none;
        overflow: hidden;
        margin: 0;
      }

      footer {
        clear: both;
        background-color: aqua;
        display: block;
        border: black 10px;
        box-sizing: border-box;
      }

      p {
        margin: 1rem;
      }
    </style>
  </head>
  <body>
    <section>
      <div class="article">
        <p>
          Lorem ipsum dolor sit amet, consectetur adipiscing elit. In ac
          eleifend ex, vitae bibendum tortor. Sed rutrum, orci quis venenatis
          congue, justo orci volutpat justo, semper vestibulum mauris est mattis
          mi. Duis tincidunt enim congue elit egestas, ut ultrices purus
          vulputate. Curabitur gravida tellus vel ornare convallis. Nunc
        </p>
      </div>
      <aside>
        <p>
          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec auctor
          aliquam massa. Pellentesque maximus tortor ac est ultricies, id
          sodales ligula vehicula. Fusce dignissim risus ligula, a feugiat augue
        </p>
      </aside>
      <footer>
        <p>
          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
          malesuada dolor quis ante tempus, eget posuere massa egestas. Integer
          feugiat tellus nibh. Vestibulum pellentesque quam eu hendrerit porta.
          Suspendisse sagittis eros vitae urna convallis, sit amet venenati
        </p>
      </footer>
    </section>
  </body>
</html>

推荐答案

应用了margin-您的问题只是您声明了一个10px border而没有声明border-style,因此本质上看起来p元素的margin溢出了,因为存在一个10px的不可见border.应用border-style,您将看到margin:

body {
  background-color: pink;
}

section {
  background-color: lightgray;
  max-width: 1000px;
  box-sizing: border-box;
}

.article {
  background-color: lightyellow;
  width: 70%;
  float: left;
  margin: 0;
}

aside {
  background-color: lightgreen;
  float: right;
  float: none;
  overflow: hidden;
  margin: 0;
}

footer {
  background-color: aqua;
  display: block;
  border: black solid 10px;
  box-sizing: border-box;
}

p {
  margin: 1rem;
}
<section>
  <div class="article">
    <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit. In ac eleifend ex, vitae bibendum tortor. Sed rutrum, orci quis venenatis congue, justo orci volutpat justo, semper vestibulum mauris est mattis mi. Duis tincidunt enim congue elit egestas, ut ultrices
      purus vulputate. Curabitur gravida tellus vel ornare convallis. Nunc
    </p>
  </div>
  <aside>
    <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec auctor aliquam massa. Pellentesque maximus tortor ac est ultricies, id sodales ligula vehicula. Fusce dignissim risus ligula, a feugiat augue
    </p>
  </aside>
  <footer>
    <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam malesuada dolor quis ante tempus, eget posuere massa egestas. Integer feugiat tellus nibh. Vestibulum pellentesque quam eu hendrerit porta. Suspendisse sagittis eros vitae urna convallis,
      sit amet venenati
    </p>
  </footer>
</section>

Html相关问答推荐

卡片上方的文本

如何实现弯曲的梯形导航栏?

垂直页眉,每行只显示一个使用css的字母

R-markdown中的非顺序列表

通过动态div的对角线

如何收集<;p&>元素下的<;p>;子元素

粘滞的导航栏延伸到超过页边距的右侧

我怎样才能有一个div,在其中放置一个消息,打破和不go 的div?

创建特定的CSS网格布局

Angular MatBadge 在高于 99 时不显示完整数字

为什么 CSS 网格超出了父级?

对齐列表项内的文本,使其不在元素装饰下

Tailwind:父母动态适应子元素的身高

如何将两个平行 div 的页面内的表格居中?

将图像的高度限制为固定的纵横比,并在超过时使用 object-fit

将 HTML 元素粘贴到容器底部,而不剪裁其顶部

如何使用 CSS 使粘性元素固定在视口顶部

项目的水平列表:倒数第二个项目居中,而最后一个项目占据所有剩余空间

有没有办法使用 CSS border-radius 创建 HTML 视频标签的三角形显示?

图标未定位到右上角