高さが不明な要素を並べ替える方法は、Flexboxで行うのが最適です。デスクトップブラウザ(IEはここでの主な制限要因であり、サポートはv10で始まります)ではサポートは素晴らしいですが、ほとんどのモバイルブラウザはをサポートしています。
http://cssdeck.com/labs/81csjw7x
@media (max-width: 30em) {
.container {
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-orient: vertical;
-moz-box-orient: vertical;
-webkit-flex-direction: column;
-ms-flex-direction: column;
flex-direction: column;
/* optional */
-webkit-box-align: start;
-moz-box-align: start;
-ms-flex-align: start;
-webkit-align-items: flex-start;
align-items: flex-start;
}
.container .first {
-webkit-box-ordinal-group: 2;
-moz-box-ordinal-group: 2;
-ms-flex-order: 1;
-webkit-order: 1;
order: 1;
}
}
http://caniuse.com/#feat=flexbox
フレキシボックスは、典型的なグリッド技術のような他のレイアウト方法と衝突することができることに注意してください。浮動するように設定されたフレックスアイテムは、2009仕様(display: -webkit-box
)を使用してWebkitブラウザで予期しない結果を引き起こす可能性があります。フレキシボックスより