<body class="position-fixed d-flex flex-column text-white bg-red">
<header class="page-header">
<nav class="d-flex justify-content-between">
<a href="" class="logo"><strong>Mathew Adams</strong></a>
<ul class="d-flex">
<li>
<a href="">Skills</a>
</li>
</ul>
</nav>
</header>
<h1 class="position-absolute w-100 text-center heading">
Web Developer, Traveler, Dreamer
</h1>
<a class="position-absolute contact" href="mailto:[email protected]">Email</a>
<section class="position-absolute d-flex align-items-center justify-content-center text-black bg-white skills-section" data-slideIn="to-top">
<button class="position-absolute skills-close" aria-label="Close Skills Section">✕</button>
<div class="d-flex chart-wrapper">
<ul class="chart-levels">
<li>Expert</li>
<li>Advanced</li>
<li>Intermediate</li>
<li>Beginner</li>
<li>Novice</li>
</ul>
<ul class="d-flex justify-content-around align-items-end flex-grow-1 text-center bg-black chart-skills">
<li class="position-relative bg-red" data-height="80%">
<span class="position-absolute w-100">CSS</span>
</li>
<li class="position-relative bg-red" data-height="60%">
<span class="position-absolute w-100">HTML</span>
</li>
<li class="position-relative bg-red" data-height="68%">
<span class="position-absolute w-100">JavaScript</span>
</li>
<li class="position-relative bg-red" data-height="52%">
<span class="position-absolute w-100">Python</span>
</li>
<li class="position-relative bg-red" data-height="42%">
<span class="position-absolute w-100">Ruby</span>
</li>
</ul>
</div>
</section>
</body>
/* RESET RULES & HELPER CLASSES
–––––––––––––––––––––––––––––––––––––––––––––––––– */
:root {
--black: #1a1a1a;
--white: #fff;
--red: #e21838;
--transition-delay: 0.85s;
--transition-delay-step: 0.3s;
}
* {
padding: 0;
margin: 0;
}
ul {
list-style: none;
}
a {
text-decoration: none;
color: inherit;
}
button {
background: none;
border: none;
cursor: pointer;
outline: none;
}
.d-flex {
display: flex;
}
.flex-column {
flex-direction: column;
}
.justify-content-center {
justify-content: center;
}
.justify-content-between {
justify-content: space-between;
}
.justify-content-around {
justify-content: space-around;
}
.align-items-center {
align-items: center;
}
.align-items-end {
align-items: flex-end;
}
.flex-grow-1 {
flex-grow: 1;
}
.w-100 {
width: 100%;
}
.position-relative {
position: relative;
}
.position-fixed {
position: fixed;
}
.position-absolute {
position: absolute;
}
.text-center {
text-align: center;
}
.text-black {
color: var(--black);
}
.text-white {
color: var(--white);
}
.bg-black {
background: var(--black);
}
.bg-white {
background: var(--white);
}
.bg-red {
background: var(--red);
}
/* BODY
–––––––––––––––––––––––––––––––––––––––––––––––––– */
body {
top: 0;
right: 0;
bottom: 0;
left: 0;
font: 1rem/1.5 "Montserrat", sans-serif;
overflow: hidden;
}
/* HEADER
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.page-header {
padding: 20px;
border-bottom: 1px solid #e93451;
}
.page-header li:not(:last-child) {
margin-right: 20px;
}
.page-header .logo {
font-size: 1.2rem;
z-index: 1;
transition: color 0.3s;
}
.window-opened .page-header .logo {
color: var(--black);
transition-delay: 0.8s;
}
/* HEADING
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.heading {
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-size: 2.5rem;
}
/* CONTACT
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.contact {
bottom: 20px;
right: 20px;
}
/* SECTION
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.skills-section {
top: 0;
right: 0;
bottom: 0;
left: 0;
transform: translateX(100%);
}
This Pen doesn't use any external JavaScript resources.