我正在尝试使用bootstrap布局网页,其中两列包含各种高度的元素。
当高于sm
时,我想布局如下两列:
a
和b
位于c
单独的同一div中时,很容易
但是当sm
及以下时,我希望div c
在a
和b
之间转移:
a
c
和b
按此顺序 时, 很容易
注意:b
应位于a
正下方, NOT 会受c
高度的影响。由于div是不同的高度,当div b
为short而div a
很长时,我无法对div c
进行对齐。
答案 0 :(得分:2)
只需在中间块上添加pull-right
类。遵循HTML
结构将使其成为可能。
<div class="container">
<div class="row">
<div class="col-xs-12 col-sm-6">
...
</div>
<div class="col-xs-12 col-sm-6 pull-right">
...
</div>
<div class="col-xs-12 col-sm-6">
...
</div>
</div>
</div>
@import url('https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css');
.red {
margin-bottom: 20px;
background: red;
height: 50px;
}
.green {
margin-bottom: 15px;
background: green;
height: 100px;
}
.yellow {
background: #ffa500;
height: 150px;
}
<div class="container">
<div class="row">
<div class="col-xs-12 col-sm-6">
<div class="red">a</div>
</div>
<div class="col-xs-12 col-sm-6 pull-right">
<div class="green">c</div>
</div>
<div class="col-xs-12 col-sm-6">
<div class="yellow">b</div>
</div>
</div>
</div>
答案 1 :(得分:0)
您可以使用绝对定位,使用媒体查询以您希望的屏幕尺寸向右“拉”C
<强> HTML 强>
<div class="row">
<div class="col-xs-12 col-sm-6">
<div id="divA">A</div>
<div id="divC">C</div>
<div id="divB">B</div>
</div>
</div>
<强> CSS 强>
#divA,
#divB,
#divC{
padding:20px;
color:white;
margin-bottom:5px;
width:100%;
}
#divA{
background:red;
}
#divB{
background:orange;
}
#divC{
background: green;
}
@media (min-width: 768px) {
#divC{
position:absolute;
top:0;
left:100%;
}
}