【问题标题】:How to vertically align image with flex?如何将图像与flex垂直对齐?
【发布时间】:2016-04-27 18:56:32
【问题描述】:

我知道它已被回答,但没有一个答案对我有用。

HTML:

<div class="sm-col md-col-8 col-12">
  <div class="horizontal-flex">
    <div class="vertical-flex">
      <img class="inline gallery-image-max" src="<%= picture.dir %><%= picture.filename %>">
    </div>
  </div>
</div>

CSS:

 .vertical-flex {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.horizontal-flex {
  display: flex;
  justify-content: center;
}

有什么解决办法吗?

【问题讨论】:

    标签: html css flexbox


    【解决方案1】:

    使用align-items:center

    .vertical-flex {
      display: flex;
      align-items: center; /*vertical align*/
      justify-content: center; /*horizontal align*/
      border: 1px solid red;
      height: 500px;
    }
    <div class="vertical-flex">
      <img class="inline gallery-image-max" src="http://lorempixel.com/100/100">
    </div>

    【讨论】:

      【解决方案2】:

      刚刚将高度添加到 class=Horizo​​ntal-flex。它就像一个魅力:) 它需要高度。

      【讨论】:

      • 现在出现的问题是class Horizo​​ntal-flex的div没有得到height: 100% :/