Skip to content

Instantly share code, notes, and snippets.

@tamueka
Created September 15, 2018 21:30
Show Gist options
  • Save tamueka/59e141ae0ccb5a0e9d124016101895cc to your computer and use it in GitHub Desktop.
Save tamueka/59e141ae0ccb5a0e9d124016101895cc to your computer and use it in GitHub Desktop.
Sticky Header CSS Transition
<header>
<h1>MEDIUM</h1>
<nav>
<a href="#">Home</a>
<a href="#">About</a>
<a href="#">Gallery</a>
<a href="#">Contact</a>
</nav>
</header>
<div class="wrapper">
<section id='steezy'>
<h2> This is some steezy stuff</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum! Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ex libero cupiditate deserunt earum, fuga, ab labore esse animi, nihil est tenetur non delectus perferendis. Maxime accusamus ea rem sint at!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum! Lorem ipsum dolor sit amet, consectetur adipisicing elit. A ut aspernatur omnis neque iusto. Veritatis rem ad atque optio perferendis. Dolorum qui consequatur, repellat soluta impedit porro totam molestiae sit.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum! Lorem ipsum dolor sit amet, consectetur adipisicing elit. Possimus iusto, omnis quas, rem minus cupiditate, sunt voluptates minima sint nemo ipsa itaque consequatur dolor, quam necessitatibus vitae. Quod, eaque, quam.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
</section>
<section id='real'>
<h2> Keepin' it real</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
</section>
<section id='big'>
<h2>Go big, or go home</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Harum enim sunt delectus, reiciendis omnis laudantium animi, et nulla quidem, aliquam aliquid. A consectetur deleniti voluptates eius neque, voluptate voluptatibus nostrum!</p>
</section>
</div>
</body>
$(function(){
$(window).scroll(function(){
var winTop = $(window).scrollTop();
if(winTop >= 30){
$("body").addClass("sticky-header");
}else{
$("body").removeClass("sticky-header");
}//if-else
});//win func.
});//ready func.
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

Sticky Header CSS Transition

Fun example of a sticky header utilizing some CSS3 transitions!

A Pen by Samuel on CodePen.

License.

@import "compass/css3";
@import "compass/css3";
@import "compass/reset";
*{
@include box-sizing(border-box);
}
body{
background-color: #ecf0f1;
font-family: helvetica, arial, sans-serif;
font-size: 16px;
padding-top: 330px;
@include transition(padding-top .5s ease);
}
header{
width: 100%;
height: 300px;
background-color: #3498db;
text-align: center;
position: relative;
position: fixed;
top: 0;
overflow: hidden;
@include transition(all .5s ease);
h1{
font-size: 42px;
color: #fff;
line-height: 230px;
text-transform: uppercase;
font-weight: 100;
@include transition(all .3s ease);
}
nav{
position: absolute;
bottom: 0;
height: 60px;
line-height: 60px;
width: 100%;
background-color: rgba(0,0,0,.1);
a{
color: #fff;
display: inline-block;
padding: 10px 15px;
line-height: 1;
text-decoration: none;
@include border-radius(2px);
&:hover{
@include box-shadow(0 0 0 1px #fff);
}
}
}
}
h2{
font-size: 34px;
text-transform: uppercase;
font-weight: 100;
line-height: 2;
color: #2c3e50;
}
p{
margin-bottom: 2rem;
line-height: 2;
color: #7f8c8d;
}
.wrapper{
width: 800px;
margin: 0 auto;
}
section{
padding: 20px;
margin-bottom: 40px;
background-color: #fff;
@include border-radius(4px);
@include box-shadow(0 1px 0 rgba(0,0,0,.2));
}
/* Sticky Header Style */
/* ---------------------------------------- */
body.sticky-header{
padding-top: 100px;
header{
height: 60px;
background-color: rgba(52,152,219,.9);
h1{
@include scale(0);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment