JSFiddle - React, Tailwind, and code Playground
by erlingormar
HTML
<nav class="cl-effect-5">
<ul class="main-nav">
<li>
<a href="#" class="menu-collection">
<span>Collection</span>
<span class="duplicate">Collection</span>
</a>
</li>
<li>
<a href="#" class="menu-artis">
<span>Art is</span>
<span class="duplicate">Art is</span>
</a>
</li>
<li>
<a href="#" class="menu-shop">
<span>Shop</span>
<span class="duplicate">Shop</span>
</a>
</li>
<li>
<a href="#" class="menu-about">
<span>About</span>
<span class="duplicate">About</span>
</a>
</li>
</ul>
</nav>
CSS
.fulljustify { text-align: justify; text-transform: uppercase; }
.fulljustify:after { content: ""; display: inline-block; width: 100%; }
ul li {
list-style: none;
}
nav a {
display: block;
outline: none;
text-decoration: none;
text-transform: uppercase;
font-weight: 400;
font-size: 1.35em;
width: 100%;
}
nav a.menu-collection { letter-spacing: 40px; }
nav a.menu-artis { letter-spacing: 85px; }
nav a.menu-shop { letter-spacing: 146px; }
nav a.menu-about { letter-spacing: 105px; }
span{
display: block;
}
.cl-effect-5 a {
overflow: hidden;
height: 1.35em;
}
.cl-effect-5 a span {
-webkit-transition: -webkit-transform 0.3s;
-moz-transition: -moz-transform 0.3s;
transition: transform 0.3s;
}
.cl-effect-5 a span.duplicate {
color: yellow;
}
.cl-effect-5 a:hover span,
.cl-effect-5 a:focus span {
-webkit-transform: translateY(-100%);
-moz-transform: translateY(-100%);
transform: translateY(-100%);
}
/* Duplicate span handled */
.cl-effect-5 a span.duplicate,
.cl-effect-5 a span.duplicate {
-webkit-transform: translateY(100%);
-moz-transform: translateY(100%);
transform: translateY(100%);
}
.cl-effect-5 a:hover span.duplicate,
.cl-effect-5 a:focus span.duplicate {
-webkit-transform: translateY(-100%);
-moz-transform: translateY(-100%);
transform: translateY(-100%);
}