Ale*_*lex 6 html css vertical-alignment css3
我可以在没有JS和最小高度的情况下完成相同高度的所有块(作为特殊情况)吗?块可以放在多行上.
示例jsfiddle

ul {
font-size: 0;
max-width: 300px;
text-align: center;
}
li {
vertical-align: top;
display: inline-block;
width: 30%;
margin: 1%;
background: grey;
font-size: 12px;
}Run Code Online (Sandbox Code Playgroud)
<ul>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
</ul>Run Code Online (Sandbox Code Playgroud)
如果flexbox是一个选项,那么你可以让ul一个包装 flexbox.
这是怎么回事?
display: flex创建一个flexbox,它具有以各种方式在其子节点之间分配空格的属性.
flex-wrap: wrap允许lis根据内容转到下一行
justify-content: center 水平居中.
在垂直方向上,lis有一个名为的属性align-items: stretch,这是默认属性- 这允许lis 的高度在一条线上相等.
见下面的演示:
ul {
font-size: 0;
max-width: 300px;
text-align: center;
display:flex;
flex-wrap:wrap;
justify-content:center;
}
li {
vertical-align: top;
display: inline-block;
width: 30%;
margin: 1%;
background: grey;
font-size: 12px;
}Run Code Online (Sandbox Code Playgroud)
<ul>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
<li>Lorem ipsum dolor sit amet.</li>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
<li>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</li>
</ul>Run Code Online (Sandbox Code Playgroud)