【问题标题】:Why doesn't body margin cause white border when background color is set for body? [duplicate]为body设置背景颜色时,为什么body margin不会导致白色边框? [复制]
【发布时间】:2020-01-15 06:11:58
【问题描述】:

默认情况下,body 有 8px 的边距。如果我为正文设置背景颜色声明,则整个页面都将填充该颜色。由于边距在元素之外,我预计外面会有一条白色带。我想也许边距是在屏幕外添加的,但是使用 Chrome 开发工具我可以看到边距在页面的边界内。为什么正文边距会这样工作?

body {
  background-color: #ccc;
}

【问题讨论】:

    标签: css


    【解决方案1】:

    如果html 没有背景颜色,则它与body 相同。如果您想在body 周围留出边距,只需添加

    html {
        background: white;
    }
    

    【讨论】:

      【解决方案2】:

      您的浏览器采用内部根颜色:

      它可以找到的第一个颜色是body中的#ccc,因此html会采用它。

      body {
        background-color: #ccc;
      }

      你需要一个与正文不同的单独的html颜色样式:

      html {
          background: white;
      }
      
      body {
        margin: 8px;
        background-color: #ccc;
      }

      但是,因为body中没有内容,所以没有高度。 我们需要为 html 和 body 设置高度,以便 100% 占据您的浏览器。

      html {
          background: white;
      }
      
      body {
        margin: 8px;
        background-color: #ccc;
      }
      
      html,body{
        height:100%
      }

      【讨论】:

      • 您的浏览器采用内部根颜色: 这与背景无关。如您所见,这是关于 color 而不是 background-color
      猜你喜欢
      • 2016-09-17
      • 2021-04-22
      • 1970-01-01
      • 1970-01-01
      • 2020-11-11
      • 1970-01-01
      • 1970-01-01
      • 2012-07-27
      • 2015-08-20
      相关资源
      最近更新 更多