Ever since the Divi sticky options update has been released, weβve been sharing tips and tricks on how to use them throughout your website builds with Divi, and today, weβre adding another one for you to bookmark! This tutorial will be all about interaction. Weβll automatically place a custom header below each pageβs hero section and turn that header sticky as soon as visitors scroll past it, which results in a beautiful scrolling experience. Youβll be able to download the JSON file for free as well!
Letβs get to it.
- 1 Preview
- 2 Download The Template for FREE
- 3 Download For Free
- 4 You have successfully subscribed. Please check your email address to confirm your subscription and get access to free weekly Divi layout packs!
- 5 1. Create a New Page Using Diviβs Upholstery Layout Pack Landing Page
- 6 2. Download & Install the Free Header & Footer for Diviβs Upholstery Layout Pack
- 7 3. Place Header Section Below Hero Section
- 8 4. Apply Sticky Position & Styles to Header
- 9 Preview
- 10 Final Thoughts
Preview
Before we dive into the tutorial, letβs take a quick look at the outcome across different screen sizes.
Desktop
Mobile
Download The Template for FREE
To lay your hands on the free page template, you will first need to download it using the button below. To gain access to the download you will need to subscribe to our newsletter by using the form below. As a new subscriber, you will receive even more Divi goodness and a free Divi Layout pack every Monday! If youβre already on the list, simply enter your email address below and click download. You will not be βresubscribedβ or receive extra emails.
1. Create a New Page Using Diviβs Upholstery Layout Pack Landing Page
For this tutorial, weβre going to use the Upholstery Layout Pack and its free header and footer template that you can download on the blog. Although weβre using this particular layout pack, you can apply this method to any kind of website youβre building. To preview the result while going through the tutorial below, we recommend you set up a page that you keep open in a separate tab. To match the header and footer weβll use, weβre setting up a new page using a layout of choice that comes with Diviβs Upholstery Layout Pack.
Next, weβll download the free header and footer template for Diviβs Upholstery Layout Pack. Downloading and installing this freebie will help us focus on the important part of this tutorial, which is getting the technique right. Once youβve gone to the blog post, navigate to the email optin form and fill in your email address. Then, a download button will appear. This download button will allow you to download a zipped folder. Once youβve unzipped the folder, you can find a JSON file that contains a default website template with a global header and footer.
To use the JSON file youβve just downloaded, navigate to your Divi Theme Builder.
There, click on the import & export button in the top right corner and upload the JSON file you can find in your download folder.
Create New Page Template
As soon as youβve uploaded the template, youβll see a global header and footer appear inside your default website template. To avoid weird header placements, weβll only apply the βpick up sticky headerβ effect to our pages, but if you have a Divi-built hero section on other custom post types too, feel free to use the header there as well. Add a new template and use it on all pages.
- Use On: All Pages
As soon as you add the page template, the global header and footer will automatically be added to that template. Weβre turning this global header into a custom header by removing the global header and footer in our default website template. This way, the changes we make to our header will only apply to pages.
3. Place Header Section Below Hero Section
Open Global Header Template
Now that weβve set up the theme builder environment for our header, itβs time to switch over to our header template by clicking on the pencil icon.
Assign a Custom CSS ID to Section Inside Global Header
Once inside the template editor, youβll see a header design that contains a section, row and a couple of modules. To automatically place the header below each pageβs first hero section, weβre going to need to assign a custom ID to our section. The technique weβre using is based on a previous tutorial. The difference between this post and the one mentioned in the previous sentence is that as soon as a visitor passes by the header, itβll be turned sticky. When people scroll back up, itβll take back its place below the hero section.
- CSS ID: custom-header
Continue by adding a new Code Module to the rowβs first column.
Add JQuery Code to Place Section Below Each Pageβs First Section
There, weβll insert some JQuery code thatβll automatically place the header section below each pageβs first hero section.
jQuery(function($){ $(document).ready(function(){ $('#custom-header').insertAfter('.et_pb_section_0'); }); });
Add CSS Code to Same Code Module
Weβll include a CSS class between style tags too to prevent the header from showing up in the builder while building pages.
#et_pb_root #custom-header { display: none; }
4. Apply Sticky Position & Styles to Header
Add Sticky Positioning to Section
Now that our section is placed below each pageβs first hero section, itβs time to apply the sticky effect too. To do that, weβll use Diviβs built-in sticky settings in the advanced tab.
- Sticky Position: Stick to Top
Add Sticky Box Shadow to Section
Now that the sticky position has been applied, we can start making sticky changes to our section and all child elements it contains. Weβll start by adding a sticky box shadow to our section container.
- Box Shadow Blur Strength: 30px
- Shadow Color
- Default: rgba(0,0,0,0)
- Sticky: rgba(0,0,0,0.13)
Modify Sticky Row Gradient Background
Then, weβll apply a sticky gradient background to our row.
- Color 1: #ffffff
- Color 2: #e8e8e8
Then, weβll open the Menu Module and change the menu text color in a sticky state.
- Menu Text Color: #2d2e34
Weβll modify the sticky menu hamburger icon color too.
- Hamburger Menu Icon Color: #2d2e34
Add Sticky Logo Invert Filter
And weβll complete the tutorial by adding an image invert filter. Thatβs it! Once youβve applied all these changes to your header, make sure you save the template and Divi Theme Builder changes before viewing the outcome on the page youβve created in the first part of the tutorial.
- Image Invert: 80%
Preview
Now that weβve gone through all the steps, letβs take a final look at the outcome across different screen sizes.
Desktop
Mobile
Final Thoughts
In this post, weβve shared another tip and trick you can apply with Diviβs built-in sticky options. More specifically, weβve shown you how to βpick upβ your header once you scroll past it. The header will be automatically placed below each pageβs first section. If you have any questions or suggestions, feel free to leave a comment in the comment section below!
If youβre eager to learn more about Divi and get more Divi freebies, make sure youΒ subscribe to our email newsletterΒ andΒ YouTube channelΒ so youβll always be one of the first people to know and get benefits from this free content.
How to make sticky transitions smoother?
hello divi nation,
If you include a custom body from the theme builder, you just have to change the tag in the jQuery code to hello divi nation, to .et_pb_section_0_tb_body
saludos
Thanks for this great tutorial π
I tried to make all the steps as concentrated as i can, but i still have a “problem”.
What do i have to do if I want my header image to be placed before the sticky menu ? Just as it’s done on your preview.
I guess there’s a step i didn’t watch.
Otherwise, it’s all good !
I was so curious about this kind of header but was not able to make it properly! Really thankful to you so I got what I needed! Saved my money that I was going to give a freelancer to do this!
This is a great tutorial as always π I am tempted to implement it on my website. I’ve always liked this style of menu, as it draws extra attention to it in my opinion.
Thank you, Micheal π It definitely helps draw attention to it, try it!
This tutorial is quite helpful, thanks
Happy to hear that, Fem! π