JSFiddle - React, Tailwind, and code Playground
by AntonTrollback
HTML
<div class="block">
<ul class="centered">
<li><img src="http://placehold.it/150x200"></li>
<li><img src="http://placehold.it/150x200"></li>
<li><img src="http://placehold.it/150x200"></li>
</ul>
</div>
CSS
html, body {
height: 100%;
}
.block {
text-align: center;
height: 100%;
}
.block:before {
content: '';
display: inline-block;
height: 100%;
vertical-align: middle;
margin-right: -0.25em; /* Adjusts for spacing */
/* For visualization
background: #808080; width: 5px;
*/
}
.centered {
display: inline-block;
vertical-align: middle;
}
ul {
overflow: hidden;
vertical-align: middle;
}
li {
position: relative;
width: 75px;
height: 100px;
-webkit-transition: .3s ease;
opacity: .7;
display: inline-block;
margin: 0 12px;
vertical-align: middle;
}
li img {
display: block;
position: absolute;
width: 100%;
height: auto;
}
li.focus {
width: 150px;
height: 200px;
opacity: 1;
}
JavaScript
$('li:first-child').addClass('focus');
$('li').click(function(){
$('.focus').removeClass('focus');
$(this).addClass('focus');
});