我正在尝试使用div创建一个2x2网格.某些div可能包含图像,但可能会将其设置为背景,并带有选项background-size: cover
.
这是我创建的笔:http://codepen.io/qarlo/pen/vLEprq
.container {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: auto;
max-width: 960px;
width: 80%;
}
.container__item {
align-content: center;
border: 1px solid #333;
display: flex;
flex-basis: 1;
font-size: 3em;
justify-content: center;
height: 100%;
margin-bottom: 1em;
min-height: 300px;
width: 47%;
}
?
?
?
?
我想在调整大小时强制div为正方形并保持纵横比.我错误地希望这对Flexbox来说很简单,但除非我遗漏了什么,否则我错了.
要保持项目宽高比,一种非常简单的方法是使用CSS视口单元
我修改了你的笔,看看这个单位是如何工作的:http://codepen.io/vladbicu/pen/wMBmOb
.container { display: flex; flex-wrap: wrap; justify-content: space-between; margin: auto; max-width: 960px; width: 80%; } .container__item { align-content: center; border: 1px solid #333; display: flex; flex-basis: 1; font-size: 3em; justify-content: center; margin-bottom: 1em; // maintain aspect ratio width: 30vw; height: 30vw; }
希望能帮助到你.