1
添加DIV工作考慮以下小提琴:https://jsfiddle.net/7naxprzd/1/CSS柔性成長不上邊
的要求是:
與頭- 兩列和內容列
- 面應對準
- 列的底部應該對齊
- 在每列頂部應該有一個水平居中的箭頭
如果通過刪除div
類.arrow-wrapper
消除箭頭,但代碼正常工作,但我需要箭頭。
一個解決方案可以是絕對定位箭頭,但有沒有辦法解決這個佈局問題與柔性沒有絕對定位的箭頭?
應該適用於現代瀏覽器和IE11。
.row-wrapper {
display: flex;
}
.col-wrapper-outer {
display: flex;
flex-wrap: wrap;
}
.arrow-wrapper {
width: 100%;
text-align: center;
font-size: 30px;
}
.col-wrapper {
width: 100%;
display: flex;
flex-direction: column;
border: 2px solid red;
color: white;
}
.col-wrapper .header {
background: blue;
}
.col-wrapper .contents {
flex: 1 0 auto;
background: green;
}
<div class="row-wrapper">
<div class="col-wrapper-outer">
<div class="arrow-wrapper">
↓
</div>
<div class="col-wrapper">
<div class="header">Please align tops.</div>
<div class="contents">Let me grow.</div>
</div>
</div>
<div class="col-wrapper-outer">
<div class="arrow-wrapper">
↓
</div>
<div class="col-wrapper">
<div class="header">please align tops.</div>
<div class="contents">Let me grow.<br>Please<br>align<br>bottoms.</div>
</div>
</div>
</div>
在Chrome中的工作,而不是在IE11。在IE11中,頂部是對齊的,但底部不是(小的列不會像代碼規定的那樣增長)。 – Michiel
啊,是的。接得好。 'flex'屬性在IE中存在渲染問題。我已經在[**這篇文章**](https://stackoverflow.com/q/32239549/3597276)中詳細說明了這個問題。該解決方案適用於各種瀏覽器,而不是使用longhand屬性'flex-grow'。 https://jsfiddle.net/7naxprzd/3/ –
幹得好!這樣做的工作。謝謝。 – Michiel