Hover effect
by Glynne Turner
HTML
<script src="https://code.jquery.com/jquery-3.4.1.slim.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.css">
<!-- DEMO 1 -->
<div class="car">
<div class="row">
<!-- DEMO 1 Item-->
<div class="col-md-4 col-lg-3 mb-3 mb-lg-0">
<div class="hover hover-1 text-white rounded"><img src="https://bootstrapious.com/i/snippets/sn-img-hover/hoverSet-3.jpg" alt="">
<div class="hover-overlay"></div>
<div class="hover-1-content px-5 py-4">
<h3 class="hover-1-title text-uppercase font-weight-bold mb-0"> <span class="font-weight-light">Image </span>Caption</h3>
<p class="hover-1-description font-weight-light mb-0">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
</div>
</div>
</div>
<!-- DEMO 2 Item-->
<div class="col-md-4 col-lg-3 mb-3 mb-lg-0">
<div class="hover hover-1 text-white rounded"><img src="https://bootstrapious.com/i/snippets/sn-img-hover/hoverSet-3.jpg" alt="">
<div class="hover-overlay"></div>
<div class="hover-1-content px-5 py-4">
<h3 class="hover-1-title text-uppercase font-weight-bold mb-0"> <span class="font-weight-light">Image </span>Caption</h3>
<p class="hover-1-description font-weight-light mb-0">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
</div>
</div>
</div>
<!-- DEMO 3 Item-->
<div class="col-md-4 col-lg-3 mb-3 mb-lg-0">
<div class="hover hover-1 text-white rounded"><img src="https://bootstrapious.com/i/snippets/sn-img-hover/hoverSet-3.jpg" alt="">
<div...
CSS
.car{overflow:hidden}
.hover {
overflow: hidden;
position: relative;
padding-bottom: 60%;
}
.hover-overlay {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
z-index: 90;
transition: all 0.4s;
}
.hover img {
width: 100%;
position: absolute;
top: 0;
left: 0;
transition: all 0.3s;
}
.hover-content {
position: relative;
z-index: 99;
}
.hover-1 img {
width: 105%;
position: absolute;
top: 0;
transition: all 0.3s;
}
.hover-1-content {
position: absolute;
bottom: 0;
left: 0;
z-index: 99;
transition: all 0.4s;
}
.hover-1 .hover-overlay {
background: rgba(0, 0, 0, 0.5);
}
.hover-1-description {
transform: translateY(0.5rem);
transition: all 0.4s;
opacity: 0;
}
.hover-1:hover .hover-1-content {
bottom: 1rem;
}
.hover-1:hover .hover-1-description {
opacity: 1;
transform: none;
}
.hover-1:hover img {
transform: scale(1.05);
}
.hover-1:hover .hover-overlay {
opacity: 0;
}