Ho aggiunto un fondo imbottito a una classe di immagini edesiderava una sovrapposizione al passaggio del mouse sull'immagine, ma si estende oltre l'immagine inclusa la spaziatura interna aggiunta. C'è un modo per assicurarsi che il passaggio del mouse si estenda solo sulla larghezza e l'altezza dell'immagine senza riempimento? Grazie!
.work-image {
width: 100%;
height: 100%;
position: relative;
padding-bottom: 15px;
vertical-align: bottom;
}
.work-image img {
width: 100%;
}
.work-image:after, .work-image:before {
opacity: 0;
position: absolute;
transition: all 0.5s;
-webkit-transition: all 0.5s;
}
.work-image:after {
top: 0;
left: 0;
width: 100%;
height:100%;
content: "A";
background:rgba(0,0,0,0.6);
}
.work-image:before {
top: 50%;
z-index: 1;
width: 100%;
color: #fff;
text-align: center;
transform: translateY(-50%);
content: attr(data-content);
}
.work-image:hover:after, .work-image:hover:before {
opacity:1;
}
<div data-content="Here is a caption" class="work-image">
<img src="/images/http://i65.tinypic.com/2l8w0hc.jpg" alt="" />
</div>
<div data-content="Here is a caption" class="work-image">
<img src="/images/http://i64.tinypic.com/2zodetx.jpg" alt="" />
</div>
risposte:
1 per risposta № 1Mossa vertical-align: bottom;
a partire dal .work-image
a .work-image img
e sostituire padding-bottom
con margin-bottom
.
.work-image {
width: 100%;
height: 100%;
position: relative;
margin-bottom: 15px;
}
.work-image img {
width: 100%;
vertical-align: bottom;
}
.work-image:after, .work-image:before {
opacity: 0;
position: absolute;
transition: all 0.5s;
-webkit-transition: all 0.5s;
}
.work-image:after {
top: 0;
left: 0;
width: 100%;
height:100%;
content: "A";
background:rgba(0,0,0,0.6);
}
.work-image:before {
top: 50%;
z-index: 1;
width: 100%;
color: #fff;
text-align: center;
transform: translateY(-50%);
content: attr(data-content);
}
.work-image:hover:after, .work-image:hover:before {
opacity:1;
}
<div data-content="Here is a caption" class="work-image">
<img src="/images/http://i65.tinypic.com/2l8w0hc.jpg" alt="" />
</div>
<div data-content="Here is a caption" class="work-image">
<img src="/images/http://i64.tinypic.com/2zodetx.jpg" alt="" />
</div>