JSFiddle - React, Tailwind, and code Playground
HTML
<div id="wrapper">
<div id="arrow4" class="arrow">
<div class="white">START HERE!</div>
</div>
<div id="main">
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="wall"></div>
<div class="way"></div>
<div class="way"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="wall"></div>
<div class="way"></div>
<div class="wall"></div>
<div class="way"></div>
<div class="way"></div>
<div class="wall"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="way"></div>
<div class="wall"></div>
<div class="way"></div>
<div class="wall"></div>
<div class="way"></div>
<div class="way"></div>
<div...
CSS
#main {
position: relative;
width: 550px;
height: 550px;
float: left;
margin-left: 220px;
margin-top: 100px;
background: grey;
overflow: hidden;
}
body {
background: #6cc5c3;
font-family: 'HelveticaNeue-UltraLight', 'Helvetica Neue UltraLight', 'Helvetica Neue', Helvetica, Arial, sans-serif; font-weight: 100; letter-spacing: 1px;
}
.way {
width: 50px;
height: 50px;
background: #2e8dad;
float: left;
}
#finish {
width: 50px;
height: 50px;
background: #fff;
float: left;
}
.wall {
width: 50px;
height: 50px;
background: #fff;
float: left;
}
#wrapper {
width: 750px;
margin: 0 auto;
}
.arrow {
margin-top: 150px;
position: absolute;
color: #fff;
font-weight: bold;
margin-bottom: 5px;
}
#arrow4:after {
content: '';
height: 0;
display: block;
border-color: transparent transparent transparent #fff;
border-width: 20px;
border-style: solid;
position: absolute;
top: 0;
left: 160px;
}
.white {
height: 20px;
padding: 10px;
width: 140px;
color: #6cc5c3;
background: #fff;
text-align: center;
}
#highlight_win {
width: 550px;
height: 550px;
position: absolute;
top: 50%;
left: 50%;
display: none;
margin: -180px 0 0 -180px;
}
div.smileyface {
width: 300px;
height: 300px;
position: relative;
border-radius: 150px;
-webkit-border-radius: 150px;
-moz-border-radius: 150px;
display: block;
background: #ffe632;
background: -webkit-gradient(linear, left top, left bottom, from(#fffe8d), to(#f6d23e));
background: -moz-linear-gradient(top, #fffe8d, #f6d23e);
box-shadow: inset 0px -14px 14px rgba(0, 0, 0, .3), 0px 2px 20px rgba(0, 0, 0, .6);
-webkit-box-shadow: inset 0px -14px 14px rgba(0, 0, 0, .3), 0px 2px 20px rgba(0, 0, 0, .6);
-moz-box-shadow: inset 0px -14px 14px rgba(0, 0, 0, .3), 0px 2px 20px rgba(0, 0, 0, .6);
}
p.eyes {
width: 50px;
height:...
JavaScript
$(".wall").hover(function() {
$(this).css("background", '#000');
})
$(".way").bind('mouseenter', function() {
$('#highlight_lose').fadeIn(1000);
$('.wall').css("background", '#fff');
})
$('#highlight_lose').bind('mouseleave', function() {
$(this).fadeOut(1000);
})
$('#finish').bind('mouseenter', function() {
$('#highlight_win').fadeIn(1000);
$('.wall').css("background", '#fff');
})
$('#highlight_win').bind('mouseleave', function() {
$(this).fadeOut(1000);
$('.wall').css("background", '#fff');
})