我正在使用 twitter bootstrap 3 来设计一个布局,它有两列,一个 float 边栏和一个主要内容,左边距相对于边栏大小,但是当我在 中使用 clearfix 类时主要内容中的 ul 元素,似乎是 clearfix 类,清理侧边栏(float clear)并推送 ul 以及后续的内容。
HTML
<aside id="sidebar">
<h1>Search Items</h1>
<form id="searchForm">
<div class="form-group">
<label for="category">Category</label>
<select name="category" id="category" class="form-control">
<option value="">Choose</option>
<option value="1">Category 1</option>
<option value="2">Category 2</option>
<option value="3">Category 3</option>
</select>
</div>
<div class="form-group">
<label for="term">Search Term</label>
<input type="text" name="term" id="term" class="form-control"/>
</div>
<div class="text-center">
<button class="btn btn-default">Search</button>
</div>
</form>
CSS
body{
background: #F7F5FA;
overflow-x: hidden;
}
.container-full {
margin: 0 auto;
width: 100%;
padding: 0 15px;
}
#sidebar{
float: left;
width: 260px;
position: relative;
background: #ddd;
display: block
}
#sidebar #searchForm{
padding: 10px;
}
#main-content{
margin: 0px 0px 0px 260px;
background: #FFF;
position: relative;
min-height: 600px;
width: auto;
}
.gallery ul{
background: black;
}
.gallery li{
float: left;
width: 120px;
height: 120px;
padding: 5px;
background: #ddd;
}
.gallery li a{
display: block;
}
我该如何解决这个问题?
最佳答案
将这个类添加到您的 CSS 中:
.row{
overflow:hidden;
}
是因为你的aside
,你给aside
设置了固定宽度,给你的main-content
设置了margin,这是不对的并排放置元素的方法。但是如果你在 aside
和 main-content
上使用百分比宽度并使用 float
它看起来不错并且不需要 溢出:隐藏
(或自动)。
看看这个:
#sidebar{
float: left;
width: 20%; /* instead 260px */
position: relative;
background: #ddd;
display: block
}
#main-content{
background: #FFF;
position: relative;
min-height: 600px;
width: 80%; /* instead auto */
float:left; /* added */
}
关于css - 推特 bootstrap clearfix 下推,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20296560/