今天在使用flex布局中,为了不新增额外的dom元素,直接将img元素放在flex容器的下一层,作为一个flex项目,但是为了横向排列,所以给img元素设置了宽度,但是高度没有随着宽度变化而变化(保持高宽比),情况如下:
/*html*/
...
<div class="flexBox">
<img src="image.jpg" alt="img"/>
<div class="others">
...
</div>
</div>
...
/*css*/
.flexBox{
display:flex;
}
.flexBox img{
width:30%;
}
在这种情况下高度无法随着宽度自动变化,需要在父容器中添加这样的垂直方向的属性设置才行:
.flexBox{
display:flex;
align-items:center;
}
但是我还没找的这种解决方法的理论解释是什么,所以有大家有理论解释的可以指点一下吗???!!!!!!!