html - 如何在移动版上交换第一个 div 和最后一个 div?

标签 html twitter-bootstrap css

我有如下的div。

<div class="row">
  <div class="col-sm-12" id="first-row"></div>
  <div class="col-sm-12" id="second-row"></div>
  <div class="col-sm-12" id="third-row"></div>
  <div class="col-sm-12" id="fourth-row"></div>
</div>

如何在移动设备上交换第一行 div 和第四行 div?是否可以只使用 css?实现这一目标的最佳策略是什么,我可以用 javascript 做到这一点,但想知道仅使用 css 是否可行。我正在使用 Bootstrap 3

移动端的预期结果

<div class="row">
    <div class="col-sm-12" id="fourth-row"></div>
    <div class="col-sm-12" id="second-row"></div>
    <div class="col-sm-12" id="third-row"></div>
    <div class="col-sm-12" id="first-row"></div>
</div>

最佳答案

如果你在上使用flexbox,你可以使用order属性(property)为您做这件事。 (您可以使用媒体查询display: flex添加到目标移动设备)

在下面的演示中查看 fourth-rowfirst-row 的位置是如何交换的:

div.row {
  display: flex;
  flex-direction: column;
}

[id$='-row'] {
  order: 2;
}
#first-row {
  order: 3;
}
#fourth-row {
  order: 1;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">

<div class="row">
  <div class="col-sm-12" id="first-row">1</div>
  <div class="col-sm-12" id="second-row">2</div>
  <div class="col-sm-12" id="third-row">3</div>
  <div class="col-sm-12" id="fourth-row">4</div>
</div>

关于html - 如何在移动版上交换第一个 div 和最后一个 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45945121/

相关文章:

javascript - 带变量的jquery计算

javascript - twitter bootstrap 网格可变高度基于图像大小比例

css - 如何正确使用css transition?

javascript - Bootstrap 表在控制台中给出错误

javascript - AngularJS:创建一个我可以在我的 app.js 文件中使用的类来使用超链接图片

jquery - 带有 Bootstrap 的 Yeoman : How to choose jQuery version?

html - CSS,容器高度比预期的要小,有什么办法解决吗?

html - anchor为内联元素时,为什么li元素计算高度

html、div 和 float 结构

html - 位于 Bootstrap 容器内元素后面的全 Angular 背景?