我想要做的是<div>
container
类和固定宽度,<div>
类block
以防止其他内容侵入任何不均匀的空格,然后是<div>
内并排的两列(block
),并且是block
宽度的50%。
当我创建这个时,我得到的是第一个块之后的边距,这是我不想要的。我希望这个区块收紧,没有利润。
我有一个示例here到目前为止我在这里,如果代码:
<html>
<head>
<title>Columns</title>
<style>
div {
margin: 0;
padding: 0;
}
.container {
background: #DDD;
width: 1200px;
margin: 0 auto;
padding: 2% 0;
}
.block {
background: #555;
width: 100%;
display: block;
}
.col {
width: 49%;
display: inline-block;
background: #333;
}
</style>
</head>
<body>
<div class="container">
<div class="block">
<div class="col left">
<h1>Left</h1>
</div>
<div class="col right">
<h1>Right</h1>
</div>
</div>
</div>
</body>
</html>
答案 0 :(得分:5)
问题是inline-block
导致的问题,使用它会在中间出现空格。
尝试使用float:left
解决此问题:
.col {
width: 50%;
float: left;
box-sizing: border-box;
background: #333;
}
请注意,我添加了box-sizing:border-box;
这意味着当您使用padding
时,它将包含在width
中,而不是在div
之上。有效地使用它而无需额外的内部.clear {
clear:both;
}
。
请记住,之后还要包括一个明确的解决方案,以“清除”花车。
<强> CSS 强>
<div class="block">
<div class="col left">
<h1>Left</h1>
</div>
<div class="col right">
<h1>Right</h1>
</div>
<div class="clear"></div>
</div>
<强> HTML 强>
{{1}}
答案 1 :(得分:2)
尝试替换这些类:
.block {
background: none repeat scroll 0 0 #555555;
display: block;
overflow: auto;
width: 100%;
}
.col {
width: 49%;
float: left;
background: #333;
}