我目前使用的图像网格应用了“灰度到彩色”和“缩放”效果。缩放效果正在容器外部扩展。我已经应用了overflow: hidden
(几次)并设置了max-width
。但是,这些尝试均未成功。这是我的JSFiddle。
的HTML
<div class="content">
<ul class="rows">
<li>
<a href="#"><img src="http://lorempixel.com/400/200/" alt="Case Study" width="50%" height="auto" style="float:left"></a>
</li>
<li>
<a href="#"><img src="http://lorempixel.com/400/200/" alt="Case Study" width="50%" height="auto" style="float:left"></a>
</li>
<li>
<a href="#"><img src="http://lorempixel.com/400/200/" alt="Case Study" width="50%" height="auto" style="float:left"></a>
</li>
<li>
<a href="#"><img src="http://lorempixel.com/400/200/" alt="Case Study" width="50%" height="auto" style=" float:left"></a>
</li>
<li>
<a href="#"><img src="http://lorempixel.com/400/200/" alt="Case Study" width="50%" height="auto" style="float:left"></a>
</li>
<li>
<a href="#"><img src="http://lorempixel.com/400/200/" alt="Case Study" width="50%" height="auto" style="float:left"></a>
</li>
</ul>
</div>
的CSS
.content {
width: 100%;
height: auto;
min-height: 100%;
}
.rows {
list-style: none;
overflow: hidden;
width: 100%;
}
.rows li a img {
max-width: 100%;
overflow: hidden;
}
.rows a img {
-webkit-transform: scale(1);
transform: scale(1);
-webkit-transition: .3s ease-in-out;
transition: .3s ease-in-out;
-webkit-filter: grayscale(100%) opacity(0.7);
filter: grayscale(100%) opacity(0.7);
}
.rows a img:hover {
-webkit-transform: scale(1.2);
transform: scale(1.2);
-webkit-filter: grayscale(0) opacity(1);
filter: grayscale(0) opacity(1);
-webkit-transition: .3s ease-in-out;
transition: .3s ease-in-out;
}
最佳答案
图片容器是a
标记,因此您应在此元素上设置overflow: hidden
:
.rows li a {
float: left;
width: 50%;
overflow: hidden;
}
将以上代码添加到CSS中,并将html中所有图像的宽度设置为
100%
:<a href="#"><img src="http://lorempixel.com/400/200/" alt="Case Study" width="100%" height="auto" style="float:left"></a>
关于html - 图像悬停效果在容器外扩展,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38485704/