2017-11-27 8 views
1

フレックスボックスの子を各行の上端に垂直に整列させるにはどうすればよいですか?フレックスの子を一番上に整列する

HTML:

#container { 
 
    align-items: flex-start; 
 
    align-content: flex-start; 
 
    display: flex; 
 
    flex-wrap: wrap; 
 
    justify-content: space-between; 
 
} 
 
.child { 
 
    margin: auto; 
 
    border: 1px dotted #CCC; 
 
} 
 
img, h3 { 
 
    width: 160px; 
 
}
<div id="container"> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>Title</h3> 
 
    </div> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>The quick brown fox jumps over the lazy dog</h3> 
 
    </div> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>Title</h3> 
 
    </div> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>Title</h3> 
 
    </div> 
 
</div>

デモ:https://codepen.io/anon/pen/GOBzOp

私は何を参照してthisですが、私はそれがmargin:autothis

+0

ちょうど 'マージンを削除しますあなたがそれを必要としないので '.child'から' auto: ' – VXp

答えて

2

変更に見えるようにしたいです210〜margin: 0px auto

-1

あなたはjustify-content: space-around;#containerへのidの代わりjustify-content: space-between;を与え、margin: auto;.childにクラスを削除

.child { 
    vertical-align: baseline; //either of them 
    margin: 0px auto; // any one 
} 
+0

フレックスアイテムで動作するプロパティを読み上げるべきでしょう... 'vertical-align'はそれらの1つではありません – LGSon

+0

彼のプロジェクトでこれを試してみてください。https://codepen.io/anon/pen/GOBzOp –

+0

私はする必要はありません、私はマージンを知っています:0pxオート;仕事と '垂直整列:ベースライン;'は...私は投票しなかった代わりに、私は最初にあなたが投票を下る前に答えを修正することができます。 – LGSon

1

のように試すことができます。

#container { 
 
    align-items: flex-start; 
 
    align-content: flex-start; 
 
    display: flex; 
 
    flex-wrap: wrap; 
 
    justify-content: space-around; 
 
} 
 
.child { \t 
 
    border: 1px dotted #CCC; 
 
} 
 
img, h3 { 
 
    width: 160px; 
 
}
<div id="container"> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>Title</h3> 
 
    </div> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>The quick brown fox jumps over the lazy dog</h3> 
 
    </div> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>Title</h3> 
 
    </div> 
 
    <div class="child"> 
 
    <img src="http://via.placeholder.com/160x160"> 
 
    <h3>Title</h3> 
 
    </div> 
 
</div>

0

簡単な修正はそうのように、これは箱の自動縦に集中できなくなりmargin: 0 auto;margin: auto;を変更するが、その水平方向の配置を保持することになります。

.child { 
    border: 1px dotted #CCC; 
    margin: 0 auto; 
} 
関連する問題