当我将鼠标悬停在图像上时,我正在使用这种非常酷的css过渡。它工作正常,但有时似乎出现白色边框。当我不使用溢出:隐藏时,边界消失了。但我需要溢出:隐藏否则过渡不起作用。 (img是500px w / 500px h)
任何人都可以帮我吗?
.grid {
position: relative;
margin: 0 auto;
overflow: auto;
width: 100%;
list-style: none;
text-align: center;
}
/* Common style */
.grid figure {
position: relative;
float: left;
overflow: hidden;
margin: 10px 1%;
margin: 0;
width: 25%;
/* background: #101224; */
text-align: center;
cursor: pointer;
}
.grid figure img {
position: relative;
display: block;
width: 100%;
opacity: 0.8;
}
.grid figure figcaption {
padding: 2em;
color: #fff;
text-transform: uppercase;
font-size: 1.25em;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
.grid figure figcaption::before,
.grid figure figcaption::after {
pointer-events: none;
}
.grid figure figcaption,
.grid figure figcaption > a {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/* Anchor will cover the whole item by default */
/* For some effects it will show as a button */
.grid figure figcaption > a {
z-index: 1000;
text-indent: 200%;
white-space: nowrap;
font-size: 0;
opacity: 0;
}
.grid figure h2 {
word-spacing: -0.15em;
font-weight: 300;
}
.grid figure h2,
.grid figure p {
margin: 0;
}
.grid figure p {
letter-spacing: 1px;
font-size: 68.5%;
}
/*---------------*/
/***** Sadie *****/
/*---------------*/
figure.effect-sadie figcaption::before {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: -webkit-linear-gradient(top, rgba(17, 18, 36, 0) 0%, rgba(17, 18, 36, 0.8) 75%);
background: linear-gradient(to bottom, rgba(17, 18, 36, 0) 0%, rgba(17, 18, 36, 0.8) 75%);
content: '';
opacity: 0;
-webkit-transform: translate3d(0, 50%, 0);
transform: translate3d(0, 50%, 0);
}
figure.effect-sadie h2 {
position: absolute;
top: 50%;
left: 0;
width: 100%;
color: #fff;
/* color: #dd9a45; */
-webkit-transition: -webkit-transform 0.35s, color 0.35s;
transition: transform 0.35s, color 0.35s;
-webkit-transform: translate3d(0, -50%, 0);
transform: translate3d(0, -50%, 0);
}
figure.effect-sadie figcaption::before,
figure.effect-sadie p {
-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
transition: opacity 0.35s, transform 0.35s;
}
figure.effect-sadie p {
position: absolute;
bottom: 0;
left: 0;
padding: 2em;
width: 100%;
opacity: 0;
-webkit-transform: translate3d(0, 10px, 0);
transform: translate3d(0, 10px, 0);
}
figure.effect-sadie:hover h2 {
color: #dd9a45;
;
-webkit-transform: translate3d(0, -50%, 0) translate3d(0, -40px, 0);
transform: translate3d(0, -50%, 0) translate3d(0, -40px, 0);
}
figure.effect-sadie:hover figcaption::before,
figure.effect-sadie:hover p {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
@media only screen and (max-width: 1000px) {
.grid figure {
width: 50%;
}
}
@media only screen and (max-width: 500px) {
.grid figure {
width: 100%;
}
.grid {
padding: 0 5%
}
}

<div class="grid">
<figure class="effect-sadie">
<img src="img/2.jpg" alt="img02" />
<figcaption>
<h2>IMG ONE</h2>
<p>Sadie never took her eyes off me.
<br>She had a dark soul.</p>
<a href="#">View more</a>
</figcaption>
</figure>
<figure class="effect-sadie">
<img src="img/14.jpg" alt="img14" />
<figcaption>
<h2>IMG TWO</h2>
<p>Sadie never took her eyes off me.
<br>She had a dark soul.</p>
<a href="#">View more</a>
</figcaption>
</figure>
<figure class="effect-sadie">
<img src="img/2.jpg" alt="img02" />
<figcaption>
<h2>IMG THREE</h2>
<p>Sadie never took her eyes off me.
<br>She had a dark soul.</p>
<a href="#">View more</a>
</figcaption>
</figure>
<figure class="effect-sadie">
<img src="img/14.jpg" alt="img14" />
<figcaption>
<h2>IMG FOUR</h2>
<p>Sadie never took her eyes off me.
<br>She had a dark soul.</p>
<a href="#">View more</a>
</figcaption>
</figure>
</div>
&#13;