JSFiddle - React, Tailwind, and code Playground
HTML
<div class="sidebar">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Work</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div>
<div class="content">
<a href="#"><img src="http://placehold.it/500x400" /></a>
<a href="#"><img src="http://placehold.it/500x400" /></a>
<a href="#"><img src="http://placehold.it/500x400" /></a>
<a href="#"><img src="http://placehold.it/500x400" /></a>
<a href="#"><img src="http://placehold.it/500x400" /></a>
<a href="#"><img src="http://placehold.it/500x400" /></a>
</div>
CSS
html, body {
margin: 0;
padding: 0;
background-color: red;
font-family:'Open Sans', sans-serif;
}
.sidebar {
background-color: #fff;
width: 100px;
height: 100%;
position: fixed;
text-align: center;
padding: 50px 10px;
transition: .15s;
}
.sidebar:hover {
width: 200px;
transition: .15s;
}
.sidebar:hover + .content {
margin-left: 220px;
transition: .15s;
}
.sidebar img {
max-width: 100px;
margin-bottom: 50px;
}
.sidebar ul {
list-style-type: none;
margin: 0;
padding: 0;
}
.sidebar ul a {
color: #000;
text-decoration: none;
}
.sidebar ul a li {
opacity: 1;
transition: .15s;
}
.sidebar ul a li:hover {
opacity: .6;
transition: .15s;
}
.content {
margin-left: 120px;
transition: .15s;
}
.content a {display:inline-block;margin:0;max-width:25%;float:left;}
.content img {
display:block;
max-width:100%;
margin: 0;
padding: 0;
}