如何在浮动的流体div中垂直对齐内容?

时间:2012-11-28 17:14:39

标签: javascript jquery html css responsive-design

我正在使用1140px网格系统在流体div中的标题旁边浮动图像,如下所示:

<div class='row'>
  <div class='sixcol'>
    <img src='img/someImage.jpg'/>
  </div>
  <div class='sixcol last'>
    <h2>Large Header Text</h2>
  </div>
</div>

.row {
    width: 100%;
max-width: 1140px;
min-width: 755px;
margin: 0 auto;
overflow: hidden;
}
.sixcol {
    margin-right: 3.8%;
    float: left;
    min-height: 1px;
}
.row .sixcol {
    48%;
}
.sixcol h2 {
       text-align: center;
 }
.last {
    margin-right: 0px;
}
img {
    max-width: 100%;
    height: auto;
}
@media handheld, only screen and (max-width: 767px) {
    .row {
       width: 100%; min-width: 0; margin-left: 0px; margin-right: 0px;
   }
   .row .sixcol {
       width: auto; float: none; margin-left: 0px; margin-right: 0px;
   }
   .sixcol h2 {
       text-align: left;
    }
}

对于智能手机,标题会被推到图像下方并与容器左侧对齐,而在桌面上,所需的效果是始终在图像右侧显示标题并垂直居中于展开/收缩图像高度。有没有办法只使用CSS和HTML?有一个简单的JS / jQuery解决方案吗?

1 个答案:

答案 0 :(得分:1)

在div上使用display:table-cell;。 div会像表格单元格一样反应,因此您可以使用垂直对齐。