所以我正在使用 Twitter Bootstrap 创建一个响应式缩略图网格。当缩略图悬停时,我希望出现图像标题和图标。
目前,此代码可以按预期工作:
HTML
<div class="container">
<ul class="thumbnails">
<!-- List start -->
<li class="span3">
<div class="thumbnail">
<a href="#">
<!-- Image -->
<img src="http://www.placehold.it/300x200" />
<p>
<!-- Hover content -->
<img src="http://i.computer-bild.de/imgs/4/3/2/6/8/2/2/Icon-Google-Drive-48x48-ddb8b51ac50e8859.png" /><br />
<span>Mojo Babble</span>
</p>
</a>
</div>
</li>
</ul>
</div>
CSS
.thumbnails li {
position: relative;
overflow: hidden;
}
.thumbnail a p {
position: absolute;
top: 0;
width: 100%;
height: 100%;
background: rgba(255,0,0,.4);
text-align: center;
opacity: 0;
}
.thumbnail a:hover p {
opacity: 1;
}
小提琴:http: //jsfiddle.net/PgqGg/
唯一的问题是定位。在考虑两件事时,我希望图标和文本在某种程度上垂直居中:
- 标题必须始终可见,至少在某种程度上是这样。我只是不想剪掉它,因为它有两行长。
- 网格必须响应,所以我认为必须使用百分比值。我确实知道,对于触摸设备,没有
:hover
, 将使用媒体查询来处理。
我已经尝试了几个小时来想出一个好的解决方案,但我并没有真正成功。在某些时候它总是变得混乱,这就是为什么我现在请求你的帮助。
您将如何处理这种情况?也许为图标使用图标字体,以便我像文本一样缩放?