JSFiddle - React, Tailwind, and code Playground
HTML
<script src="//code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<link rel="stylesheet" href="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<script src="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<div class="container">
<div class="row">
<div class="col-md-3">
<div class="product">
<div class="text">
text text text
</div>
<div class="img-hide">
<img src="http://via.placeholder.com/350x150" alt="">
</div>
<div class="text-hide">
this is text hide
</div>
</div>
</div>
<div class="col-md-3">
<div class="product">
<div class="text">
text text text
</div>
<div class="img-hide">
<img src="http://via.placeholder.com/350x150" alt="">
</div>
<div class="text-hide">
this is text hide
</div>
</div>
</div>
<div class="col-md-3">
<div class="product">
<div class="text">
text text text
</div>
<div class="text-hide">
this is text hide
</div>
<div class="img-hide">
<img src="http://via.placeholder.com/350x150" alt="">
</div>
</div>
</div>
<div class="col-md-3">
<div class="product">
<div class="text">
text text text
</div>
<div class="text-hide">
this is text hide
</div>
<div class="img-hide">
<img src="http://via.placeholder.com/350x150" alt="">
</div>
</div>
</div>
</div>
</div>
CSS
.product {
height: 300px;
background: orange;
width: 100%;
text-align: center;
transition: 1s all;
overflow: hidden;
}
.product img {
opacity: 0;
width: 150%;
transition: 1s all;
}
.product:hover img {
opacity: 1;
}
.text-hide {
opacity: 0;
transition: 1s all;
font-size: 40px;
color: red;
}
.product:hover {
transform: scale(1.2) translatey(20px);
}
.product:hover img {
opacity: 1;
width: 100%;
}
.product:hover .text-hide {
opacity: 1;
}