Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 为什么填充和边距不起作用?_Html_Css - Fatal编程技术网

Html 为什么填充和边距不起作用?

Html 为什么填充和边距不起作用?,html,css,Html,Css,我有以下html页面: html{ 身高:100%; } 身体{ 保证金:0; 填充:0; 身高:100%; } .盒子{ 身高:100%; 背景颜色:棕色; } 这是一段 这是一段 这是由于 本质上,p页边距与父级div页边距组合(然后再与正文页边距组合),以向下推正文 有(至少)3种方法可以解决此问题: 从p中删除页边距顶部,这会导致删除所有p标记的页边距 将边框顶部或填充顶部添加到容器(.box),这会导致添加您可能不需要的填充或边框的负面后果 将overflow:[something

我有以下html页面:


html{
身高:100%;
}
身体{
保证金:0;
填充:0;
身高:100%;
}
.盒子{
身高:100%;
背景颜色:棕色;
}
这是一段

这是一段

这是由于

本质上,
p
页边距与父级
div
页边距组合(然后再与
正文
页边距组合),以向下推
正文

有(至少)3种方法可以解决此问题:

  • p
    中删除
    页边距顶部
    ,这会导致删除所有
    p
    标记的页边距
  • 边框顶部
    填充顶部
    添加到容器(
    .box
    ),这会导致添加您可能不需要的填充或边框的负面后果
  • overflow:[something]
    添加到
    .box
    容器中,例如
    overflow:hidden
    ,这可能导致以不希望的方式更改溢出
  • 
    html{
    身高:100%;
    }
    身体{
    保证金:0;
    身高:100%;
    }
    .盒子{
    /*在容器顶部填充是一种解决方案*/
    垫面:1px;
    身高:100%;
    背景颜色:棕色;
    }
    这是一段

    这是一段

    这是由于

    本质上,
    p
    页边距与父级
    div
    页边距组合(然后再与
    正文
    页边距组合),以向下推
    正文

    有(至少)3种方法可以解决此问题:

  • p
    中删除
    页边距顶部
    ,这会导致删除所有
    p
    标记的页边距
  • 边框顶部
    填充顶部
    添加到容器(
    .box
    ),这会导致添加您可能不需要的填充或边框的负面后果
  • overflow:[something]
    添加到
    .box
    容器中,例如
    overflow:hidden
    ,这可能导致以不希望的方式更改溢出
  • 
    html{
    身高:100%;
    }
    身体{
    保证金:0;
    身高:100%;
    }
    .盒子{
    /*在容器顶部填充是一种解决方案*/
    垫面:1px;
    身高:100%;
    背景颜色:棕色;
    }
    这是一段

    这是一段


    这是脱离DIV的
    p
    元素的默认边距(“折叠边距”)。如果为
    p
    设置
    margin:0
    ,它将消失,但是,
    p
    元素之间的垂直距离将减小。

    这是脱离DIV的
    p
    元素的默认边距(“折叠边距”)。如果为
    p
    设置
    margin:0
    ,它将消失,但是,
    p
    元素之间的垂直距离将减少。

    默认情况下段落内置了填充,您可以使用内联样式覆盖它,或者通过使用全局默认值指定段落不应有填充


    这会将样式应用于类框中的所有“p”标记。默认情况下,段落内置了填充,您可以使用内联样式替代它,也可以使用全局默认值指定段落不应有填充


    这会将样式应用于类框中的所有“p”标记

    您可以在.box顶部设置填充

    .box {
      padding-top: 1rem;
    } 
    

    您可以在.box顶部设置填充

    .box {
      padding-top: 1rem;
    } 
    

    这是突破DIV的
    p
    元素的默认边距(“折叠边距”),我认为更好的“重复”答案是:这是突破DIV的
    p
    元素的默认边距(“折叠边距”),我认为更好的“重复”答案是这样的:
    p
    div
    的子级,为什么
    p
    能够向下移动整个内容?请阅读我链接到的规范,但我的理解是,在您的场景中,最外层容器的所有顶部边距都折叠为一个边距。
    p
    div
    的子级,为什么
    p
    能够将整个内容向下移动?请阅读我链接的规范,但我的理解是,在您的场景中,最外层容器的所有顶部边距都将塌陷为一个边距。看起来它不需要是生产就绪的代码!哎呀,让我们不要太单纯了lol:-)所以,请记住,你的答案将持续很长一段时间。用不太理想的方法(内联样式)演示问题的解决方案是许多未来的访问者将会看到的。所以,是的,我倾向于纯粹主义,或者至少在回答中解释这可能不可取,但这是实现它的一种方式……我确实喜欢纯粹主义,这是我的正常模式。。没错,你是cale_b,因为你在它上面给我打了电话,但是你说有时候需要做内联操作,比如动态操作DOM,你不想改变整个样式表,看起来它不需要为生产准备好的代码!哎呀,让我们不要太单纯了lol:-)所以,请记住,你的答案将持续很长一段时间。用不太理想的方法(内联样式)演示问题的解决方案是许多未来的访问者将会看到的。所以,是的,我倾向于纯粹主义,或者至少在回答中解释这可能不可取,但这是实现它的一种方式……我确实喜欢纯粹主义,这是我的正常模式。。对,你是cale_b,因为你在它上面给我打了电话,但是说有时候需要这样做,比如动态地操作DOM和
    .box {
      padding-top: 1rem;
    }