我有一個主容器使用flex-direction
行保存所有div
。向媒體查詢中的嵌套彈性容器添加一行
嵌套的第二個容器包含兩個div
,它們的列爲flex-direction
,以將兩個div
s堆疊在外部容器中的一行中。
使用flex-box
和媒體查詢,一旦瀏覽器寬度小於1000px,我試圖將現有的兩行的列div
'小容器'更改爲三行的列div。
我試圖通過內smaller-container
創建第三空div
和用較小的容器外一個div交換其順序這樣做,一旦瀏覽器寬度小於1000像素。
它沒有工作。我認爲這是因爲有問題的兩個div
(空白div和外部div)處於不同的嵌套級別。
如果有人能找到解決方案將一列中的兩行變成一列中的三行,那將是非常好的。
更好的是,如果該解決方案不需要嵌套容器。如果Javascript解決方案不需要插件,也歡迎使用Javascript解決方案。
形象應該如何看待:
/*Basic Reset*/
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
html,
body {
height: 100%;
}
body {
max-width: 1366px;
margin: auto;
width: 100%;
}
.container {
display: flex;
flex-wrap: wrap;
flex-direction: row;
}
.box-1 {
order: 1;
background-color: red;
height: 150px;
width: 50%;
}
.smaller-container {
display: flex;
flex-wrap: wrap;
flex-direction: column;
width: 50%;
order: 2;
}
.box-2 {
order: 3;
background-color: blue;
height: 75px;
width: 100%;
}
.box-3 {
order: 4;
background-color: green;
height: 75px;
width: 100%;
}
.box-4 {
order: 5;
width: 100%;
}
.box-5 {
order: 6;
background-color: orange;
height: 150px;
width: 100%;
}
@media screen and (max-width: 1000px) {
.box-2 {
height: 50px;
}
.box-3 {
height: 50px;
}
/******* Here we swap the empty div that hasbeen existing in the smaller container
with an outer div ********/
.box-5 {
order: 5;
height: 50px;
}
.box-4 {
order: 6;
background-color: purple;
height: 150px;
}
}
[image of desired solution][1] [1]:http://i.stack.imgur.com/vlvlx.png
<div class="container">
<div class="box-1"></div>
<div class="smaller-container">
<div class="box-2"></div>
<div class="box-3"></div>
<div class="box-4"></div>
</div>
<div class="box-5"></div>
</div>
https://jsfiddle.net/lukindo/nuv603h9/1/
關於這個網站,你覺得有用的答案,[考慮的給予好評](http://stackoverflow.com/help /有人-答案)。沒有義務。只是提高質量內容的一種方式。 –