div之间的另一个空间问题,其他答案不起作用

时间:2013-03-09 16:50:18

标签: html spaces

在网页中只有一个div之间有空格。将其重新创建为jsfiddle http://jsfiddle.net/durN4/

问题出在“Blue Ridge Parkway上的瑞士酒店”横幅和它下面的正文之间。 div标签的顶部和底部有一个空格。这是jsfiddle页面上的css代码...

#main_holder {
width: 75%;
min-width: 750px;
margin-right: auto;
margin-left: auto;
border: 5px solid #E2BE6A;
position: relative;
-moz-box-shadow: 0px 0px 21px 5px rgba(2, 1, 14, 0.6);
-webkit-box-shadow: 0px 0px 21px 5px rgba(2, 1, 14, 0.6);
box-shadow: 0px 0px 21px 5px rgba(2, 1, 14, 0.6);
height: auto;
}
#headline {
height: 155px;
border-bottom: 5px solid #E2BE6A;
width: 100%;
background: -ms-linear-gradient(top left, #FFFFFF 0%, #327EEF 100%);
background: -moz-linear-gradient(top left, #FFFFFF 0%, #327EEF 100%);
background: -o-linear-gradient(top left, #FFFFFF 0%, #327EEF 100%);
background: -webkit-gradient(linear, left top, right bottom, color-stop(0, #FFFFFF), color-stop(1, #327EEF));
background: -webkit-linear-gradient(top left, #FFFFFF 0%, #327EEF 100%);
background-image: linear-gradient(to bottom right, #FFFFFF 0%, #327EEF 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF",endColorstr="#327EEF",GradientType=1);
}
#rotator_holder {
height: 321px;
width: 100%;
border-bottom-width: 5px;
border-bottom-style: solid;
border-bottom-color: #E2BE6A;
position: relative;
}
#navbar {
height:35px;
width: 100%;
border-bottom-width: 5px;
border-bottom-style: solid;
border-bottom-color: #E2BE6A;
position: relative;
background-color: #FFF1CE;

}
#titlebar {
font-family: 'Habibi', serif;
font-size: 24px;
height: 30px;
width: 100%;
background: -ms-linear-gradient(top left, #327EEF 0%, #FFFFFF 100%);
background: -moz-linear-gradient(top left, #327EEF 0%, #FFFFFF 100%);
background: -o-linear-gradient(top left, #327EEF 0%, #FFFFFF 100%);
background: -webkit-gradient(linear, left top, right bottom, color-stop(0, #327EEF), color-stop(1, #FFFFFF));
background: -webkit-linear-gradient(top left, #327EEF 0%, #FFFFFF 100%);
background-image: linear-gradient(to bottom right, #327EEF 0%, #FFFFFF 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#327EEF",endColorstr="#FFFFFF",GradientType=0);
color: #000;
padding-top: 10px;
padding-bottom: 10px;
}
#main_content {
font-size: 18px;
background-color: #FFF1CE;
width: 100%;
-moz-box-shadow: inset 0px 0px 13px 6px #c4c6cf;
-webkit-box-shadow: inset 0px 0px 13px 6px #c4c6cf;
box-shadow: inset 0px 0px 13px 6px #c4c6cf;
}
#padding {
width: 94%;
margin-right: auto;
margin-left: auto;
font-family: "Open Sans", sans-serif;
}

2 个答案:

答案 0 :(得分:1)

您看到的内容称为collapsing margins。它是主文本中h1元素的边距,推动其容器向下。

当元素没有填充或边框,并且子元素具有边距时,该边距不适用于子元素和父边界之间,而是在父元素之外。

因此,有几种方法可以修复它,具体取决于您想要的结果:

  • 删除h1元素的上边距
  • 在容器顶部添加填充
  • 在容器顶部添加边框

答案 1 :(得分:0)

您的问题是由h1上的边距和p内的最后main_content引起的。

jsFiddle

#main_content p:last-child {
    margin-bottom: 0;
}

#main_content h1 {
    margin-top: 0;
}