结算创建两个div
之间的空隙,我有我的html的以下部分结算创建两个div
<div class="header"> <div class="header-bar">
<div class="pull-left">
<div class="title">Ci models database</div>
</div>
</div>
<div class="clear-both"></div>
<ol class=breadcrumb>
<li class="active"><a href="#">All models</a></li>
</ol>
</div>
的CSS(面包屑和活动类是自举)
.header-bar { border: None;
background-color: #66CCFF;
min-height:30px;
}
.title {
padding: 5px 5px 10px 5px;
color: white;
font-size: large;
}
.clear-both{
clear:both;
}
但之间的报头 - bar和breadcrumb html添加了一个空格(see bootply)。如何删除此空白区域,因为在div之间没有找到填充和边距。
回答:
阿波斯托,白色的空间与.title
类的到来。
10px的底部填充。
零这个和白色空间会去。
.title { padding: 5px 5px 0px 5px;
回答:
您将不得不向两个父容器(.header-bar
和breadcrumb
)添加float: left
,否则清除不会影响任何内容。此外,你将不得不放弃这两个容器width: 100%
.header-bar { border: None;
background-color: #66CCFF;
min-height:30px;
width: 100%;
float: left;
}
.breadcrumb {
width: 100%;
float: left;
}
.title {
padding: 5px 5px 10px 5px;
color: white;
font-size: large;
}
.clear-both{
clear:both;
}
回答:
的问题是,内部.title
div的计算的高度比容器.header-bar
的计算出的高度越大。像高度,最小高度,边框,填充等属性可以直接影响高度,而像显示,框的大小和位置等属性都可以间接影响高度。
结果是内部.title
div将流中下一个div压低10px。
CSS没有规定div必须包含它的高度的孩子,并阻止他们影响其他div,even when height is directly defined。我们需要确切地告诉它在呈现事物时应该如何表现。
有几种方法来解决这个问题:
http://www.bootply.com/Qa1ME2M2uk - 父使用
overflow: hidden;
。 Overflow is a css property它用于如何控制子元素大于父母时发生的情况。值得注意的是,取决于其他属性溢出不一定会以破坏布局的方式呈现自身。http://www.bootply.com/ssq3EAzeyk - 设置显式高度以严格控制元素的尺寸。这可能是标题栏的最佳选择。
http://www.bootply.com/yeodYRLLJk - 在父母上设置更大的最小高度,其中一定会包含孩子。如果您的填充用于对齐目的,这非常有用 - 在示例中设置
min-height: 40px;
这样做。http://www.bootply.com/GznfJxUWUF - 删除使元素计算为更高的填充(如另一个答案中所述)。
以上是 结算创建两个div 的全部内容, 来源链接: utcz.com/qa/260878.html