代码之家  ›  专栏  ›  技术社区  ›  Ibrahim Azhar Armar

为什么div继承sub div的属性?

  •  1
  • Ibrahim Azhar Armar  · 技术社区  · 15 年前

    在我网页的页眉部分,设计类似于logo和navigation div应该重叠一个repeat-x图像(即bg页眉)。

    这是我用过的html

    <div id="header">
        <div id="header-bar">
            <p>kljslakdjlaskjdkljasdlkjasdlkjaskldjasjd</p>
        </div>
    </div>
    

    这是css

    #header {
        min-width: 1040px;
        height: 111px;
        position: relative;
    }
    #header-bar {
        margin-top:50px;
        height:53px;
    }
    

    现在,当在标题栏中,如果我给margin top:50px,那么标题div将位置从顶部移到50px。我想达到

    header div用于定义头内容的高度。

    我想在header div中包装header bar,在header div中包装的元素或div应该在header div中有50px的边距。

    例如,标题栏的页眉div顶部的边距应为50px。

    希望我没有把你弄糊涂。

    我哪里做错了?

    我想用repeat-x属性移动图像。在标题bg div中

    5 回复  |  直到 15 年前
        1
  •  0
  •   jimplode    15 年前

    在页眉div上使用padding而不是margin。

    #header {
        min-width: 1040px;
        height: 111px;
        padding:50px 0px 0px 0px;
    }
    #header-bar {
        height:53px;
    }
    
        2
  •  1
  •   Ben James    15 年前

    边距不影响元素相对于其父元素的位置。

    #header

    #header {
        min-width: 1040px;
        height: 61px;
        position: relative;
        padding-top: 50px;
    }
    #header-bar {
        height:53px;
    }
    
        3
  •  1
  •   Justus Romijn Tim T    15 年前
        4
  •  0
  •   Ryan Kinal    15 年前

    margin-collapse . 实际上,相邻的边距将一起收拢,并且只显示较大的边距,即与0的绝对距离较大的边距。由于页眉边距(0px)与页眉栏边距(50px)相邻,因此显示的是50px边距,它会影响两个元素。

    如果你在上面加上1倍的填充物 #header ,您将获得所需的效果:

    #header {
        min-width: 1040px;
        height: 111px;
        position: relative;
        padding-top: 1px;
    }
    
        5
  •  0
  •   Shikiryu DhruvJoshi    15 年前

    你的回答是这样的吗 link