JSFiddle - React, Tailwind, and code Playground
HTML
<div class="row">
<div class="col">
<figure class="item"><img src="https://randomuser.me/api/portraits/women/13.jpg"/>
<h4>Sally Riley</h4>
<h3>$500</h3>
<div class="boxbtn">
<button>Hello wrld</button>
<hr/>
<input type="radio"/>
<p>Привет мир</p>
</div>
</figure>
</div>
<div class="col">
<figure class="item"><img src="https://randomuser.me/api/portraits/women/13.jpg"/>
<h4>Sally Riley gfgjk gjfg jkd j</h4>
<h3>$500</h3>
<div class="boxbtn">
<button>Hello wrld</button>
<hr/>
<input type="radio"/>
</div>
</figure>
</div>
<div class="col">
<figure class="item"><img src="https://randomuser.me/api/portraits/women/13.jpg"/>
<h4>Sally Riley</h4>
<h3>$500</h3>
<div class="boxbtn">
<button>Hello wrld</button>
<hr/>
<input type="radio"/>
<p>Привет мир</p>
<p>Привет мир</p>
<p>Привет мир</p>
</div>
</figure>
</div>
<div class="col">
<figure class="item"><img src="https://randomuser.me/api/portraits/women/13.jpg"/>
<h4>Sally Riley Sally Riley Sally Riley</h4>
<div class="boxbtn">
<button>Hello wrld</button>
<hr/>
<input type="radio"/>
</div>
</figure>
</div>
<div class="col">
<figure class="item"><img src="https://randomuser.me/api/portraits/women/13.jpg"/>
<h4>Sally Riley</h4>
<div class="boxbtn">
<button>Hello wrld</button>
<hr/>
<input type="radio"/>
</div>
</figure>
</div>
<div class="col">
<figure class="item"><img src="https://randomuser.me/api/portraits/women/13.jpg"/>
<h4>Sally Riley</h4>
<div class="boxbtn">
<button>Hello wrld</button>
<hr/>
<input type="radio"/>
</div>
</figure>
</div>
<div class="col">
<figure class="item"><img src="https://randomuser.me/api/portraits/women/13.jpg"/>
...
CSS
* {
box-sizing: border-box;
padding: 0;
margin: 0;
}
.row {
display: flex;
align-items: stretch;
max-width: 600px;
margin: auto;
flex-wrap: wrap;
}
.row .col {
width: 25%;
position: relative;
}
.row .col figure {
text-align: center;
width: 100%;
padding: 1em;
position: relative;
}
.row .col figure:hover {
position: absolute;
z-index: 1;
box-shadow: 0 0.2em 0.5em -0.2em rgba(0, 0, 0, 0.15);
background: white;
}
.row .col figure:hover .boxbtn {
opacity: 1;
padding-top: 1em;
position: static;
pointer-events: auto;
}
.row .col figure img {
max-width: 100%;
}
.row .col figure .boxbtn {
opacity: 0;
position: absolute;
bottom: 0;
pointer-events: none;
}
JavaScript
document.addEventListener('DOMContentLoaded', function () {
var cols = document.querySelectorAll('.col')
for (let col of cols){
col.style.height = col.offsetHeight + 'px'
}
})