1
這個問題之前已經提出過很多次,但是flex模型已經發生了巨大變化,我仍然無法找到工作解決方案。iPad上的柔性柱塌陷
技術問題
- 當對象的彎曲方向被設定爲列,所有對象崩潰的高度(即高度:0)
- 問題似乎限於iProducts。據我可以告訴Flex在所有瀏覽器桌面和Android上按預期工作。
- 這個問題並不限於Safari,因爲在iPad和Firefox上測試時,問題出現在Chrome和Firefox (IOS 10.3.3)上。
這個例子演示了這個問題。當寬度小於600像素時,行切換到列,問題將會出現。
.InputRow,
.InputItem,
.InputWrap {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.InputRow,
.InputItem {
-ms-flex-flow: wrap;
flex-flow: wrap;
}
.InputItem,
.InputWrap {
-ms-flex: 1 1 0%;
-webkit-box-flex: 1;
flex: 1 1 0%;
}
.InputWrap {
position: relative;
-ms-flex-pack: end;
-webkit-box-pack: end;
justify-content: flex-end;
-ms-flex-direction: column;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
flex-direction: column;
margin: 0 10px 10px 0;
}
@media all and (max-width:600px) {
.InputRow {
-ms-flex-direction: column;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
flex-direction: column;
-ms-flex-align: stretch;
-webkit-box-align: stretch;
align-items: stretch;
}
}
.Bx {
background: #b00;
border: 5px solid #333;
}
<div class="InputRow">
<div class="InputItem">
<div class="InputWrap">
<div class="Bx">Box 2</div>
</div>
</div>
<div class="InputItem">
<div class="InputWrap">
<div class="Bx">Box 2</div>
</div>
</div>
</div>
<div class="InputRow">
<div class="InputItem">
<div class="InputWrap">
<div class="Bx">ROW 2</div>
</div>
</div>
</div>
這可能是與嵌套結構我在這裏有設置可能存在問題,但正如我說,這個問題被隔離。
謝謝@Michael_B這是一個合理的答案,針對這個問題。添加高度會創建所需的結果,但指定固定的高度會削弱「彈性」框的作用,因爲我希望高度能夠像在其他設備上一樣動態調整其內容。 – Obsidian
找到了解決方案。看起來有些天才已經在這裏創造了一個傑出的答案:https://stackoverflow.com/a/33644245/2120261 – Obsidian