我正在尝试制作一条包含 3 列的行,以具有显示项目描述的悬停效果。
在谷歌浏览器上,当我将鼠标悬停在第一项时,第二列和第三列之间会出现间隙。在Mozilla Firefox上,当它是4或2列而不是三列时,也会发生同样的事情,最后两项之间会出现间隙。
标记
<div class="row row-3">
<div class="column">
<img src="http://placehold.it/800x650" alt="" class="image" />
<div class="info">
<p class="description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
</div><!-- .info -->
</div><!-- .column -->
<div class="column">
<img src="http://placehold.it/800x650" alt="" class="image" />
<div class="info">
<p class="description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
</div><!-- .info -->
</div><!-- .column -->
<div class="column">
<img src="http://placehold.it/800x650" alt="" class="image" />
<div class="info">
<p class="description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
</div><!-- .info -->
</div><!-- .column -->
</div><!-- .row -->
.CSS
body {
font: normal 0.7em sans-serif; }
.row {
width: 100%; }
.image {
max-width: 100%; }
.info {
background: rgba(0, 0, 0, .5);
color: #FFF;
height: 100%;
left: 0;
opacity: 0;
position: absolute;
top: 0;
transition: all .3s linaer;
width: 100%;
-webkit-transition: all .3s linear;
-moz-transition: all .3s linear;
-ms-transition: all .3s linear;
-o-transition: all .3s linear; }
.column:hover .info {
opacity: 1; }
}
.column {
position: relative; }
.row-3 .column {
float: left;
width: 33.333333%; }
我做了一个小提琴来展示这个问题:http://jsfiddle.net/q5z4B/1/
问题是您用作宽度的 33.333333%。浏览器需要一些时间来计算图像填充容器所需的"100%"33.33333%"。
可能如果您将图像宽度更改为 100.1% 的 100%,它可能会起作用
只需将此 CSS 属性添加到 .image 元素
.image
{
margin: 0;
padding: 0;
display: block;
}
检查 JSFiddle