【发布时间】:2014-11-28 04:07:26
【问题描述】:
我正在尝试使用display:table-cell 结合vertical-align: middle 在一个div 中垂直居中一些h2 文本。
但是,这似乎不起作用,因为我试图将内容居中的 div 是另一个 div 的子级。
这是我的 CSS 和 HTML:
.productList {
width: 100%;
max-width: 1120px;
position: relative;
margin: 0 auto;
}
.hoverbase1 {
float: left;
margin: 15px;
width: 250px;
height: 250px;
position: relative;
}
.hoverbase1 a br {
display: none;
}
.hoverbase1 img {
width: 250px;
height: 250px;
position: relative;
}
.hovertop1 {
position: absolute;
width: 250px;
height: 250px;
bottom: 0;
left: 0;
background-color: white;
border: 2px solid black;
opacity: 0;
display: table-cell;
vertical-align: middle;
}
.hoverbase1 a:hover + .hovertop1,
.hovertop1:hover {
opacity: 1;
}
<div class='productList'>
<div class='hoverbase1'>
<a href='http://kingfisher.org.au/library-shelving'>
<img src="http://kingfisher.org.au/pic/library_shelving.jpg" />
</a>
<div class='hovertop1'>
<a href='http://kingfisher.org.au/library-shelving'>
<h3>Library Shelving</h3>
</a>
</div>
</div>
</div>
也可通过a fiddle 获得。
【问题讨论】: