【发布时间】:2017-05-21 06:00:32
【问题描述】:
【问题讨论】:
-
这不是上面链接的问题的完全重复,因为他还想改变元素的顺序,这不是微不足道的。但这也在this question 的回答中得到了解决
标签: javascript html twitter-bootstrap css
【问题讨论】:
标签: javascript html twitter-bootstrap css
这可以通过 JQuery Dom 操作来完成。
$(window).resize(function () {
if ($(window).width() < 480) {
$("#one").insertAfter($("#two"));
} else {
$("#two").insertAfter($("#one"));
}
});
<div class="row">
<div id="one" class="col-sm-4">1</div>
<div id="two" class="col-sm-4">2</div>
<div id="three" class="col-sm-4">3</div>
</div>
如果窗口大小低于 480px,jQuery 代码块将在 div with id two 之后插入 div with id one,因此,div 2 将位于顶部,布局将类似于 2,1,3
否则它会按照1,2,3.这样的顺序排列div
【讨论】:
用类行制作一个包装器 div,然后在里面放置类 col-md-12 col-lg-4 的 div 中小屏幕为 12 列宽(全宽),桌面为 4 列宽(4 *3 = 12) 就是这样!
【讨论】:
<div class="row">
<div class="col-lg-4 col-md-4 col-sm-12 col-xs-12">1</div>
<div class="col-lg-4 col-md-4 col-sm-12 col-xs-12">2</div>
<div class="col-lg-4 col-md-4 col-sm-12 col-xs-12">3</div>
</div>
【讨论】:
<div class="col-sm-4 col-sm-push-4">2</div>
<div class="col-sm-4 col-sm-pull-4">1</div>
<div class="col-sm-4">3</div>
请检查结果:
/* Decorations */
.row.decorations > div {
color: #fff;
font-size: 28px;
font-weight: bold;
min-height: 80px;
padding-top: 6px;
}
.row.decorations > div:nth-of-type(1) { background: #9c6; }
.row.decorations > div:nth-of-type(2) { background: #f93; }
.row.decorations > div:nth-of-type(3) { background: #69c; }
/* fix SO stick navigation ;) */
@media (min-width: 768px) { .row.decorations { margin-top: 75px; } }
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<div class="container">
<div class="row decorations">
<div class="col-sm-4 col-sm-push-4">2</div>
<div class="col-sm-4 col-sm-pull-4">1</div>
<div class="col-sm-4">3</div>
</div>
</div>
【讨论】: