Creating a Flexbox Sticky Footer with Tailwind

David Musk Mar 19, 2021 Read time: 2 minute read
Creating a Flexbox Sticky Footer with Tailwind

With Tailwind CSS utility classes, making a flexbox sticky footer is easier than ever.

Back in 2016, we wrote a post called Creating a Sticky Footer with Flexbox. Not much has changed since then. If you want to push your footer to the bottom of the browser (regardless of your content size) then this is still one of the better methods. We’re using this technique on our own site today, along with most of our clients’ sites.

But if you’re using Tailwind as your front-end framework, this is easier than ever! Before, you had to write custom CSS for multiple elements and/or classes. Now, you can achieve an identical effect with just a few Tailwind utility classes:

<body class="flex flex-col min-h-screen">
    <header>...</header>
    <main class="flex-auto">...</main>
    <footer>...</footer>
</body>

The first two body classes (.flex and .flex-col) turn the body element into a vertical flex container.

.min-h-screen matches the element's height to the user's browser height.

Finally, flex-auto expands the main element to fill the available space, pushing the footer to the bottom of the screen.

Using these utility classes is the same as adding the following CSS to your body and main elements:

body {
    display: flex; // .flex
    flex-direction: column; // .flex-col
    min-height: 100vh; // .min-h-screen
}

main {
    flex: 1 1 auto; // .flex-auto
}

And that's it! If you start your next Tailwind project with this markup, then you’ll never need to worry about your footer riding up on short pages.

You can view a working example of this at Codepen. You can also check out the Tailwind Docs for a more in-depth explanation regarding these utility classes.

Subscribe to our newsletter!

A few times a year we send out a newsletter with tips and info related to Craft CMS, technical SEO, and things we find interesting. No spam. Unsubscribe any time.

You Might Also Like

Blog hero google analytics

Google Analytics Alternatives For Better Privacy

Ryan Masuga Apr 30, 2021  ·  4 minute read

User privacy is a growing concern on the web. Websites using Google Analytics to track user behavior contribute to the privacy problem, but there are many privacy-focused web analytics alternatives to use instead.

Craft vs WordPress

The Ultimate Craft CMS vs. WordPress Guide

Ryan Masuga Jan 27, 2021  ·  12 minute read

Craft CMS and WordPress are often brought up in comparisons for projects of certain size and scope. You might be considering one or the other for your next web project, either for your own company or for a client project. This is our comparison, based around points that impact our own client projects.