如何在居中的flexbox div中左对齐元素?
问题描述:
我是flexbox的新手,并试图理解它。我试图将包含包含元素的div居中,但也将这些元素左对齐。如何在居中的flexbox div中左对齐元素?
我在这里有一个codepen(https://codepen.io/anon/pen/GOWBxY),但所有元素都居中!
body {
margin: 0px;
}
.container .card {
padding: 20px 20px;
margin: 1em;
background: #ff6a6a;
}
.container {
display: flex;
justify-content: center;
align-items: flex-start;
flex-wrap: wrap;
flex-direction: row;
background: #f5f5f5;
padding: 50px 0px;
width: 100%;
}
.cardTitle {
height: 75%;
}
.card {
min-height: 8em;
width: 25%;
box-shadow: 0 0 1em #ccc;
}
<div class="container">
<div class="card">
<div class="cardTitle">Hi</div>
</div>
<div class="card">
<div class="cardTitle">Hi</div>
</div>
<div class="card">
<div class="cardTitle">Hi</div>
</div>
<div class="card">
<div class="cardTitle">Hi</div>
</div>
<div class="card">
<div class="cardTitle">Hi</div>
</div>
</div>
答
justify-content
用于证明其子元素,而不是元素本身。
所以@VXp已经说过了,您可以将其注释掉justify-content: center
,因为justify-content: flex-start
已经是默认值。
另外,如果你想居中.container
,
添加
margin: 0 auto
或者你可以给
display: flex
和justify-content: center
到你的情况body
父元素。
虽然你的.container
不会似乎因为它的width
价值为中心,为100%。
+1
我试过你的指示,它没有居中(https://codepen.io/anon/pen/xPqaRz)。 @jyoon –
只是评论:.container {justify-content:center;} – VXp