以另一个项目为中心

我们将看到如何根据 near 元素的高度来居中内容。

兼容性:IE8 +,所有其他现代浏览器。

HTML

<div class="content">
  <div class="position-container">
    <div class="thumb">
      <img src="http://lorempixel.com/400/200/">
    </div>
    <div class="details">
      <p class="banner-title">text 1</p>
      <p class="banner-text">content content content content content content content content content content content content content content</p>
      <button class="btn">button</button>
    </div>
  </div>
</div>

CSS

.content * {
  box-sizing: border-box;
}
.content .position-container {
  display: table;
}
.content .details {
  display: table-cell;
  vertical-align: middle;
  width: 33.333333%;
  padding: 30px;
  font-size: 17px;
  text-align: center;
}
.content .thumb {
  width: 100%;
}
.content .thumb img {
  width: 100%;
}

链接到 JSFiddle

要点是 3 .thumb.details.position-container 容器:

  • .position-container 必须有 display: table

  • .details 必须具有真正的宽度设置 width: ....display: table-cellvertical-align: middle

  • .thumb 必须有 width: 100%,如果你想要占用所有剩余的空间,它将受到 .details 宽度的影响。

  • .thumb 内的图像(如果你有图像)应该有 width: 100%,但如果你有正确的比例则没有必要。