Html 背景图像不';左上角的t位置

Html 背景图像不';左上角的t位置,html,css,Html,Css,我在挠头,这就是为什么我需要 垫面:1px; 在#pageHeader identifier下获取左上角的背景图像设置为#container,否则它会从顶部向下显示几个像素 即使我将填充放在顶部:0;它不起作用 此外,如果我把它放在#intro下或者删除pageheader div中的h1标记,它也可以工作 我的CSS文件 html { margin: 0; padding: 0; } body {

我在挠头,这就是为什么我需要

垫面:1px; 在#pageHeader identifier下获取左上角的背景图像设置为#container,否则它会从顶部向下显示几个像素

即使我将填充放在顶部:0;它不起作用

此外,如果我把它放在#intro下或者删除pageheader div中的h1标记,它也可以工作

我的CSS文件

html 
    {
        margin: 0;
        padding: 0;             

    }
body 
    { 
        font: 75% georgia, sans-serif;
        line-height: 1.95;
        color: #555753;         
        background: #fff url(../images/bottom.gif) no-repeat bottom right; 
        margin: 0; 
        padding: 0;
    }
#container 
    { 
        background: url(../images/bg.gif) no-repeat left top; 
        padding: 0 175px 0 110px;  
        margin: 0; 
        position: relative;
    }   
#intro 
    { 
        min-width: 470px;
        width: 100%;
    }
#pageHeader 
    {
        padding-top: 1px;   
        height: 87px;
    }
我的HTML文件看起来像

<div id="container">
<div id="intro">
<div id="pageHeader">
<h1>Hello World!</h1>   
</div>
</div>
</div>

你好,世界!
编辑~~
它的html和正文。。实际上是在我的代码中,但我在粘贴到这里时把编辑器弄乱了。

您在这里观察到的现象称为“崩溃边距”。h1元素有一定的余量。这将与外部div的边距一起折叠,因此pageHeader div向下移动。通过对pageHeader div设置非零填充,可以防止页边距折叠

如果你仔细阅读,他们会说:

“两个边距相邻当且仅当:…无填充…将它们分隔开”

规则还规定:

当两个或多个页边距折叠时,产生的页边距宽度是折叠页边距宽度的最大值


因此,结果是,顶部边距为0的外部div实际上获得了h1元素的顶部边距,这是所有顶部边距中的最大值。

您在这里观察到的现象称为“折叠边距”。h1元素有一定的余量。这将与外部div的边距一起折叠,因此pageHeader div向下移动。通过对pageHeader div设置非零填充,可以防止页边距折叠

如果你仔细阅读,他们会说:

“两个边距相邻当且仅当:…无填充…将它们分隔开”

规则还规定:

当两个或多个页边距折叠时,产生的页边距宽度是折叠页边距宽度的最大值


因此,其效果是,顶部边距为0的外部div实际上获得了h1元素的顶部边距,这是所有顶部边距中的最大值。

您可以在

处获得默认样式的所有详细信息。您可以在

处获得默认样式的所有详细信息。。我的代码中已经有html和正文了。对不起。。我的代码中已经有html和正文了。我现在明白了。。如果我理解正确,则h1的边距将通过所有标记并到达#container div bypassing#pageheader和#intro,然后其边距生效。通过在#intro或#pageheader中填充top,现在h1无法到达#container.将这些div向下推。。我说得对吗;通过添加非零填充顶部,可以防止h1的边距与外部div的边距合并,从而使h1的边距保持在pageHeader div内,外部div保持其零边距,其上边缘位于页面顶部。我试图搜索所有这些冲突元素和其他这些奇怪(显然)奇怪特征的列表。。但我还没有成功地找到任何好的资源。你能帮我弄到关于这些行为的所有信息吗?我现在明白了。。如果我理解正确,则h1的边距将通过所有标记并到达#container div bypassing#pageheader和#intro,然后其边距生效。通过在#intro或#pageheader中填充top,现在h1无法到达#container.将这些div向下推。。我说得对吗;通过添加非零填充顶部,可以防止h1的边距与外部div的边距合并,从而使h1的边距保持在pageHeader div内,外部div保持其零边距,其上边缘位于页面顶部。我试图搜索所有这些冲突元素和其他这些奇怪(显然)奇怪特征的列表。。但我还没有成功地找到任何好的资源。你能帮我弄到关于这些行为的所有信息吗?