如何使用媒体查询重新排序HTML?

xak*_*kar 5 html css html5 css3 media-queries

我希望div通过媒体查询更改元素在[查看的文档顺序中]的位置.

<div>1</div>
<div>2</div>
Run Code Online (Sandbox Code Playgroud)

当我改变我的视口然后我想div_1留在div_2.基本上div_1在顶部.但我希望通过媒体查询进行更改.可以吗??

LGS*_*Son 13

使用flexbox及其order财产

我推荐一个.wrapper,虽然你也可以使用它,body并获得相同的结果

@media screen and (max-width: 800px) {
  .wrapper {
    display: flex;
    flex-direction: column;
  }
  .wrapper div:first-child {
    order: 1;
  }
}
Run Code Online (Sandbox Code Playgroud)
<div class="wrapper">
  <div>1</div>
  <div>2</div>
</div>
Run Code Online (Sandbox Code Playgroud)

如果flexbox不是一个选项,你可以使用display: table

@media screen and (max-width: 800px) {
  .wrapper {
    display: table; 
    width: 100%; 
  }
  .wrapper div:nth-child(1) {
    display: table-footer-group; 
  }
}
Run Code Online (Sandbox Code Playgroud)
<div class="wrapper">
  <div>1</div>
  <div>2</div>  
</div>
Run Code Online (Sandbox Code Playgroud)

  • 当您想要在宽屏幕上左右排然后在左右行上并且希望在较窄的屏幕上将图像div放在每一行的顶部时,这非常方便。您的解决方案很棒。 (2认同)