【问题标题】:why are the margins for some divs?为什么某些 div 的边距?
【发布时间】:2011-01-08 01:59:32
【问题描述】:

我需要帮助解释为什么将边距应用于 wrapperdiv 中的底部两个框而不是顶部的大框。示例

html:

<div id = "mainWrapperdiv"> 
    <div id = "maindiv">  
        <div id = "moveablediv" >
            <div id = "centerPointdiv"></div>
        </div>  
    </div> 
    <div id = "animationsdiv" class = "controls"></div>
    <div id = "optionsdiv" class = "controls"></div>
</div> 

css:

*
{
    padding:        0px;
    margin:         0px;
}

div
{
    border:         1px solid;
}   

#mainWrapperdiv
{ 
    width:          1000px; 
    display:        block;
    margin-left:    auto;
    margin-right:   auto;
}     

/**** CSS approach to forcing the main containter div to include it's floated elements *****/   
#mainWrapperdiv:after
{
    content:            ".";
    display:            block; 
    clear:              both; 
    height:             0px; 
    visibility:         hidden;
}   
/***** end main containter div including floated elements **********************************/ 

#maindiv
{  
    width:          850px;  
    height:         500px;  
    border:         5px solid; 
    margin:         30px 0px 30px 70px; 
    float:          left;
} 

div.controls 
{ 
    width:          400px; 
    height:         200px; 
    border:         5px solid;    
    margin:         20px 20px 10px 70px;
    float:          left;
}

当顶部大框忽略左右边距时,是否应用底部框的边距?

【问题讨论】:

  • 我不确定你在说什么。我假设您的抱怨是右侧的底部框与中心框不对齐。对吗?

标签: html css xhtml layout


【解决方案1】:

因为你有一个

border: 5px solid;

编辑:

您的#maindiv 有一个浮点数。尝试像这样清除它:

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

<div id = "mainWrapperdiv"> 
    <div id = "maindiv" class="clearfix">  
        <div id = "moveablediv" >
            <div id = "centerPointdiv">Center Point div</div>
        </div>  
    </div> 
    <div id = "animationsdiv" class = "controls">Animations div</div>
    <div id = "optionsdiv" class = "controls">Options div</div>
</div> 

并尝试将一些内容放入div中只是为了测试。

在 div.control(底部 2 个 div)中设置边距:

div.controls 
{ 
    width:          400px; 
    height:         200px; 
    border:         5px solid;    
    margin:         20px 20px 10px 70px;
    float:          left;
}

【讨论】:

  • 这对应用到底部两个框的边距和应用到顶部框的边距有何影响?
猜你喜欢
  • 2021-10-23
  • 2013-06-12
  • 1970-01-01
  • 2012-03-12
  • 2023-04-07
  • 1970-01-01
  • 2016-11-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多