How to Reveal a Column CTA in a Sticky State with Divi

How to Reveal a Column CTA in a Sticky State with Divi

At a certain point when you’re creating a page design, you might run into a list of services, courses, or something similar that you want to share in an interactive way. The design you’re using for your list content plays a very important role in how your visitors digest the content. And with most lists, you’re also going to want to include a call to action that connects the dots. If you’re looking for a creative way to do that, you’ll love this tutorial.

Today, we’ll show you how to reveal a column CTA in a sticky state with Divi. As soon as the CTA touches the end of the column, the sticky effect stops, which gives an effortless experience in which people can continue reading the list items and decide to take action whenever they want without having to scroll up or down to find the CTA. We’ll share the JSON file for free as well!

Let’s get to it.

Preview

Before we dive into the tutorial, let’s take a quick look at the outcome across different screen sizes.

Desktop

Mobile

column cta

Download The Sticky Column CTA Section Layout for FREE

To lay your hands on the free sticky column CTA section layout, you will first need to download it using the button below. To gain access to the download you will need to subscribe to our Divi Daily email list 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.

Let’s Start Recreating!

Add New Section

Background Color

Start by adding a new section to the page you’re working on. Open the section settings and apply a white background color.

  • Background Color: #ffffff

column cta

Add Row #1

Column Structure

Continue by adding a new row using the following column structure:

column cta

Spacing

Without adding any modules yet, open the row settings and apply some bottom margin.

column cta

Add Text Module to Column

Add H2 Content

Add a Text Module with some H2 content of your choice.

column cta

H2 Text Settings

Move on to the module’s design tab and change the H2 text settings accordingly:

  • Heading 2 Font: Alata
  • Heading 2 Font Weight: Bold
  • Heading 2 Text Alignment: Center
  • Heading 2 Text Color: #000000
  • Heading 2 Text Size:
    • Desktop: 55px
    • Tablet: 40px
    • Phone: 30px

column cta

Add Divider Module to Column

Visibility

Right below the Text Module, add a Divider Module and make sure the “Show Divider” option is enabled.

column cta

Line

Move on to the module’s design tab and change the line settings as follows:

  • Line Color: #3a7a84
  • Line Style: Double

column cta

Sizing

Complete the module’s settings by modifying the sizing settings accordingly:

  • Divider Weight: 10px
  • Width: 8%
  • Module Alignment: Center
  • Height: 10px

column cta

Add Row #2

Column Structure

Continue by adding another row right below the previous one using the following column structure:

column cta

Sizing

Open the row settings and modify the sizing settings as follows:

  • Use Custom Gutter Width: Yes
  • Gutter Width: 2
  • Equalize Column Heights: Yes
  • Width: 95%
  • Max Width: 2580px

column cta

Spacing

Remove all default top and bottom padding next.

  • Top Padding: 0px
  • Bottom Padding: 0px

column cta

Column 1 Settings

Background Image

Then, open the column 1 settings and apply a background image.

  • Background Image Size: Cover

column cta

column cta

Border

Move on to the column’s design tab and apply some rounded corners.

column cta

Add Blurb Module to Column 2

Add Content

Time to add modules, starting with a Blurb Module in column 2. Add some content of your choice.

column cta

Select Icon

Select an icon next.

column cta

Background Color

Then, apply a white background color.

  • Background Color: #FFFFFF

column cta

Icon Settings

Move on to the module’s design tab and change the icon settings accordingly:

  • Icon Color: #3a7a84
  • Image/Icon Placement: Left

column cta

Title Text Settings

Then, style the title text settings.

  • Title Heading Level: H3
  • Title Font: Alata
  • Title Font Weight: Bold
  • Title Text Color: #000000
  • Title Text Size:
    • Desktop: 35px
    • Tablet: 30px
    • Phone: 20px

column cta

Body Text Settings

Make some changes to the body text settings too.

  • Body Font: Karla
  • Body Text Size:
    • Desktop: 17px
    • Tablet: 15px
    • Phone: 14px
  • Body Line Height: 2.5em

column cta

Sizing

Change the sizing settings next.

column cta

Spacing

And apply some custom padding values to the spacing settings.

  • Top Padding: 20%
  • Bottom Padding: 20%
  • Left Padding: 10%
  • Right Padding: 10%

column cta

Border

Next, we’ll add some rounded corners to the border settings.

column cta

Box Shadow

And we’ll include a subtle box shadow.

  • Box Shadow Blur Strength: 50px
  • Shadow Color: rgba(59,120,130,0.14)

column cta

Animation

Continue by removing the Blurb Module’s default animation in the animation settings next.

  • Image/Icon Animation: No Animation

column cta

Blurb Title CSS

And complete the module settings by adding one line of CSS code to the blurb title CSS box in the advanced tab.

margin-bottom: 20px;

column cta

Clone Blurb Module Twice

Once you’ve completed the first Blurb Module, clone the Blurb Module up to as many times as you need.

column cta

Change Content

Change the content in each duplicate module.

column cta

Add CTA Module to Column 1

Add Content

In column 1, the only module we need is a Call to Action Module. Add some content of your choice.

column cta

Add Button Link

Add a button link next.

column cta

Gradient Background

Then, apply a gradient background.

  • Color 1: rgba(59,120,130,0.53)
  • Color 2: #112730
  • Gradient Type: Linear
  • Gradient Direction: 161deg

column cta

Title Text Settings

Move on to the module’s design tab and make the following changes to the title text settings:

  • Title Heading Level: H3
  • Title Font: Alata
  • Title Font Weight: Bold
  • Title Text Color: #ffffff
  • Title Text Size:
    • Desktop: 50px
    • Tablet & Phone: 30px

column cta

Button Settings

Style the button next.

  • Use Custom Styles For Button: Yes
  • Button Text Size:
    • Desktop: 20px
    • Tablet: 17px
    • Phone: 15px
  • Button Border Width: 0px
  • Button Border Radius: 0px

column cta

  • Button Font: Alata
  • Button Font Weight: Bold

column cta

  • Top Padding: 20px
  • Bottom Padding: 20px
  • Left Padding: 20px
  • Right Padding: 20px
  • Box Shadow Horizontal Position: 0px
  • Box Shadow Vertical Position: 3px
  • Shadow Color: #ffffff

column cta

Sizing

Move on to the module’s sizing settings and apply the following changes:

  • Width:
    • Desktop: 95%
    • Tablet & Phone: 100%
  • Module Alignment: Center

column cta

Spacing

Add some custom top and bottom padding too.

  • Top Padding: 150px
  • Bottom Padding: 150px

column cta

Border

Include some rounded corners as well.

column cta

Transform Translate

Complete the module settings by applying the following transform translate settings:

  • Right:
    • Desktop: -25px
    • Tablet & Phone: 0px

column cta

Apply Sticky Effect to CTA Module

Sticky Settings

Now that all elements are in place, it’s time to apply the sticky effect. Open the CTA Module and apply the following sticky settings:

  • Sticky Position:
    • Desktop: Stick to Top
    • Tablet & Phone: Do Not Stick
  • Sticky Top Offset: 50px
  • Bottom Sticky Limit: Column
  • Offset From Surrounding Sticky Elements: Yes
  • Transition Default and Sticky Styles: Yes

column cta

Opacity

Now that the module is turned sticky, we can apply sticky styles. Go to the filters settings and apply the following opacity filter settings:

  • Default Opacity:
    • Desktop: 0%
    • Tablet & Phone: 100%
  • Sticky Opacity: 100%

column cta

Transition

Last but not least, we’ll change the transition settings in the advanced tab. That’s it!

  • Transition Duration: 800ms
  • Transition Speed Curve: Ease

column cta

Preview

Now that we’ve gone through all the steps, let’s take a final look at the outcome across different screen sizes.

Desktop

column cta

Mobile

column cta

Final Thoughts

In this post, we’ve shown you how to get creative with Divi’s sticky options. More specifically, we’ve shown you how to beautifully display list items with a sticky column CTA. This approach allows you to visually display all the items and have a call to action closeby while your visitors ready through your services, courses or other types of lists. You were able to download the JSON file for free as well! If you have any questions, 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 Create a Vertical Sticky Timeline Layout in Divi

How to Create a Vertical Sticky Timeline Layout in Divi

Creating a vertical sticky timeline can be extremely useful for categorizing content by year and/or month as the user scrolls down the page. The sticky date elements remain fixed beside the content for a convenient UX boost that users will appreciate.

In this tutorial, we are going to show you how to create a complete vertical sticky timeline layout in Divi. The keys to this design are (1) to give your columns a custom width so that the date elements don’t take up too much horizontal space on mobile and (2) to make the year and month sticky, with sticky limits on the section (for the year) and row (for the month).

Although this layout has multi-faceted applications, we are going to build a timeline layout for showcasing photo galleries categorized by month and year.

Let’s get started!

Sneak Peek

Here is a quick look at the design we’ll build in this tutorial.

Download the Layout for FREE

To lay your hands on the designs from this tutorial, you will first need to download it using the button below. To gain access to the download you will need to subscribe to our Divi Daily email list 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.

To import the section layout to your Divi Library, navigate to the Divi Library.

Click the Import button.

In the portability popup, select the import tab and choose the download file from your computer.

Then click the import button.

Once done, the section layout will be available in the Divi Builder.

Let’s get to the tutorial, shall we?

What You Need to Get Started

expanding corner tabs

To get started, you will need to do the following:

  1. If you haven’t yet, install and activate the Divi Theme.
  2. Create a new page in WordPress and use the Divi Builder to edit the page on the front end (visual builder).
  3. Choose the option “Build From Scratch”.

After that, you will have a blank canvas to start designing in Divi.

Part 1: Building the Stick Heading

The first element we are going to design is the sticky heading that will remain fixed at the top of the page on scroll.

Add Row

To get started, add a two-fifths three-fifths column layout to the section.

divi vertical sticky timeline

Left Heading Text

In the left column, we are going to add the heading for the timeline that will be on the left side of the page. To do this, add a text module to the left column.

divi vertical sticky timeline

Then add the text “Timeline” to the body of the text module.

divi vertical sticky timeline

Under the design tab, update the following text styles:

  • Text Font: Oxygen
  • Text Font Weight: Bold
  • Text Font Style: TT
  • Text Text Color: #666666
  • Text Size: 50px (desktop), 30px (tablet), 18px (phone)
  • Text Line Height: 1em
  • Text Alignement: right

divi vertical sticky timeline

Then update the padding as well:

divi vertical sticky timeline

Right Heading Text

To create the heading for the gallery content on the right side of the page, copy the text module in the left column and paste it into the right column.

divi vertical sticky timeline

Then open the duplicate text module settings and update the following:

  • Text Text Color: #c22969
  • Text Alignment: Left (desktop), Left (tablet)

divi vertical sticky timeline

Row Settings

To give us the room we need on mobile, we need to update the row settings as follows:

  • Gutter Width: 1
  • Width: 100%
  • Max Width: 1280px
  • Padding: 10px top, 10px bottom

divi vertical sticky timeline

Under the advanced tab, add the following custom CSS to the Main Element on tablet:

display:flex;
flex-wrap:nowrap;

divi vertical sticky timeline

Left Column Settings

Because we are using a row gutter width of 1, there is no spacing between columns. To add sufficient spacing, open the settings for column 1 and update the padding as follows:

  • Padding (desktop): 10px top, 10px bottom, 20px left, 20px right
  • Padding (tablet): 10px bottom, 10px left, 10px right

divi vertical sticky timeline

Next, we want to override the default left column width on tablet and phone so that it is 30% of the row’s width. This will match the column width we are going to add to the columns in the timeline below.

To do this, open the settings for the left column (column1) and add the following CSS to the Main Element on Tablet:

width: 30% !important;

divi vertical sticky timeline

For the right column, we want to add the same padding as we did in column 1. And we will add a left border to the column to serve as a divider as follows:

  • Padding (desktop): 10px top, 10px bottom, 20px left, 20px right
  • Padding (tablet): 10px bottom, 10px left, 10px right
  • Left Border Width: 2px
  • Left Border Color: #333333

divi vertical sticky timeline

We also want the width of the right column to be 70% of the row’s width. To update the column width, open the settings of column 2 and add the following CSS to the Main Element on tablet:

width: 70% !important;

divi vertical sticky timeline

Section Settings

To finish off the heading design, open the section settings, and update the background color:

  • Background Color: #222222

divi vertical sticky timeline

Then update the section padding:

  • Padding: 0px top, 0px bottom

divi vertical sticky timeline

To make the section sticky, go the Advanced tab and update the following:

  • Sticky Position: Stick to Top

divi vertical sticky timeline

Part 2: Creating the Sticky Timeline

This next part of the design is where we create the sticky timeline portion of the layout. The key here is to design the first section, row, and modules with all of the elements in place. Then we can duplicate each section or row as needed.

Add Section

To start, add a new regular section under the heading section we just finished.

divi vertical sticky timeline

Before we start adding our rows and content, open the section settings and update the following:

  • Padding: 0px top, 0px bottom

divi vertical sticky timeline

Add the Row, Row Styles, and Column Structure

Next, create a one-fifth one-fifth three-fifths column row to the section.

divi vertical sticky timeline

To jumpstart the design of the row, copy the styles of the row in the heading section above and paste it into the new row.

divi vertical sticky timeline

Then open the settings of the new row and update the following:

  • Padding: 50px top, 50px bottom

divi vertical sticky timeline

Then add the custom CSS to the Main Element on tablet as follows:

display:flex;
flex-wrap:nowrap;

divi vertical sticky timeline

Creating the Sticky Year

The first sticky date element for the timeline will be the year. This “year” text element will stick to the top of the section on scroll.

To create the year text element, add a new text module to column 1.

divi vertical sticky timeline

Then add the text “2020” to the body.

divi vertical sticky timeline

Under the design tab, update the text styles as follows:

  • Text Font: Oxygen
  • Text Font Weight: Bold
  • Text Text Size: 40px (desktop), 24px (tablet), 18px (phone)
  • Text Alignment: right

divi vertical sticky timeline

To make the year stick to the top of the section, update the following:

  • Sticky Position: Stick to Top
  • Sticky Top Offset: 50px
  • Bottom Sticky Limit: Section

divi vertical sticky timeline

Creating the Sticky Month

To create the sticky month text, copy the text module containing the sticky year and paste it into column 2.

divi vertical sticky timeline

Then open the settings for the new text module in column 2 and update the text body with “dec” (the month abbreviation).

divi vertical sticky timeline

The month text needs to stick to the top of the row instead of the section, so update the sticky limit as follows:

divi vertical sticky timeline

Adding the Gallery Content

In the far right column (column 3), we are going to add the content that correlates to the specific month/year. In this case, we are going to add a gallery module to display a gallery of images.

To create the gallery, add a gallery module in column 3.

divi vertical sticky timeline

Then add at least 6 images to the gallery (or however many you want) and update the following:

  • Image Count: 6
  • Show Title and Caption: NO
  • How Pagination: NO

divi vertical sticky timeline

Under the design tab, update the following:

  • Padding: 3% left, 3% right

divi vertical sticky timeline

To create some custom spacing between the gallery items, add the following custom CSS to the Gallery Item CSS:

padding: 0 1% 2% 1%;

divi vertical sticky timeline

Update Column Widths and Spacing

Like we did for the columns in the heading section, we are going to give our columns custom spacing and widths (one mobile) so that they line up with the headings and look good on tablet and phone.

Column 1

Open the settings for column 1 and update the following:

  • Padding: 1% left, 2% right

divi vertical sticky timeline

Under the advanced tab, add the following custom CSS to the Main Element on tablet:

width: 15% !important;

divi vertical sticky timeline

Then open the settings for column 2 and add the same padding and CSS as follows:

  • Padding: 1% left, 2% right

Main Element CSS (tablet):

width: 15% !important;

divi vertical sticky timeline

Then open the settings for column 3 and update the padding and Main Element CSS as follows:

  • Padding: 1% left, 2% right

Main Element CSS (tablet):

width: 70% !important;

divi vertical sticky timeline

Duplicate the Row for Additional Months

Once the first row is complete, we can duplicate the row for additional months.

Duplicate the row.

divi vertical sticky timeline

In the duplicate row, take out the text for the year. We only need one year per section since the year will stick to the top and bottom of the section.

divi vertical sticky timeline

Then open the text for the month and update the month abbreviation with a new month.

divi vertical sticky timeline

Duplicate the Section for Additional Years

In the same way we duplicated the row for additional months, we can duplicate the entire section for additional years.

Go ahead and duplicate the section we just created for 2020 content.

divi vertical sticky timeline

In the duplicate section, update the year text in row 1, column 1 with the year “2019”.

divi vertical sticky timeline

You can continue this process to build addition years and months as needed for your timeline layout.

Final Result

Check out the final result.

Final Thoughts

The brunt of the design work for this timeline layout is to make it responsive by giving the text sizes and column width mobile-specific styles. But, the sticky positioning of the date elements is extremely easy with Divi’s built-in options. Hopefully, this will come in handy for future projects. I can see this being helpful for showcasing a history timeline for an about page or even for a resources page, downloads page, or product updates.

I look forward to hearing from you in the comments.

Cheers!