📖 Scenario: You are building a simple webpage that always shows the footer at the bottom of the browser window, even if the page content is short. This is called a sticky footer. It helps keep important footer information visible without scrolling.
🎯 Goal: Create a webpage using Bootstrap that has a sticky footer. The footer should stay at the bottom of the page or viewport. The page should have a header, main content area, and footer. The footer background should be dark with white text.
📋 What You'll Learn
Use Bootstrap 5 classes for layout and styling
Create a header section with a title
Create a main content section with some placeholder text
Create a footer that sticks to the bottom of the viewport
Footer background must be dark and text must be white
Use semantic HTML5 elements: , ,
Ensure the page is responsive on different screen sizes
💡 Why This Matters
🌍 Real World
Sticky footers are common on websites to keep important information like copyright, contact links, or navigation visible at the bottom of the page.
💼 Career
Web developers often need to create layouts that adapt to different content lengths and screen sizes. Knowing how to implement sticky footers with Bootstrap is a practical skill for building professional, user-friendly websites.
Progress0 / 4 steps
1
Create the basic HTML structure with Bootstrap
Write the basic HTML5 skeleton with lang="en", meta charset="UTF-8", and viewport meta tag. Include the Bootstrap 5 CSS CDN link inside the <head>. Inside the <body>, create a <header> with a <h1> that says "Sticky Footer Example". Then add a <main> with a <p> containing the text "This is the main content area.". Do not add the footer yet.
Bootsrap
Hint
Remember to include the Bootstrap CSS link in the head and use semantic tags like <header> and <main>.
2
Add a container and configure the page layout for sticky footer
Inside the <body>, wrap the <header> and <main> inside a <div> with the Bootstrap class container. Then add a Bootstrap utility class d-flex flex-column min-vh-100 to the <body> tag to make the body a vertical flex container with minimum viewport height 100%.
Bootsrap
Hint
Use class="d-flex flex-column min-vh-100" on the <body> and wrap content inside a div with class container.
Use mt-auto on the footer to push it to the bottom, and style it with bg-dark and text-white.
4
Add accessibility and final touches
Add an aria-label="Site footer" attribute to the <footer> element for accessibility. Also, add a Bootstrap class text-center to the footer's inner div to center the footer text horizontally.
Bootsrap
Hint
Add aria-label="Site footer" to the footer and text-center class to the inner container div.
Practice
(1/5)
1. What is the main purpose of a sticky footer in a web page layout?
easy
A. To make the footer disappear when scrolling down
B. To keep the footer visible at the bottom of the page on all screen sizes
C. To fix the header at the top of the page
D. To center the main content vertically
Solution
Step 1: Understand the sticky footer concept
A sticky footer is designed to stay at the bottom of the page regardless of content height or screen size.
Step 2: Compare options with the concept
Only To keep the footer visible at the bottom of the page on all screen sizes describes this behavior correctly; others describe unrelated features.
Final Answer:
To keep the footer visible at the bottom of the page on all screen sizes -> Option B
Quick Check:
Sticky footer = footer always at bottom [OK]
Hint: Sticky footer means footer stays at bottom always [OK]
Common Mistakes:
Confusing sticky footer with fixed header
Thinking footer hides on scroll
Assuming footer centers content
2. Which Bootstrap utility class helps make the body a flex container for a sticky footer layout?
easy
A. d-flex flex-column min-vh-100
B. text-center bg-primary
C. container-fluid p-3
D. position-fixed bottom-0
Solution
Step 1: Identify flexbox classes for vertical layout
Bootstrap's d-flex flex-column makes the body a vertical flex container, and min-vh-100 ensures full viewport height.
Step 2: Check other options
Options B and C are unrelated styling classes; A fixes position but doesn't create flex layout.
Final Answer:
d-flex flex-column min-vh-100 -> Option A
Quick Check:
Flex column + full height = sticky footer base [OK]
Hint: Use d-flex flex-column min-vh-100 on body [OK]
Common Mistakes:
Using position-fixed instead of flexbox
Confusing padding or text classes with layout
Missing min-vh-100 for full height
3. Given this HTML snippet using Bootstrap classes for sticky footer:
But the footer does not stick to the bottom on short pages. What is missing?
medium
A. The container class on the main
B. The position-fixed class on the footer
C. The min-vh-100 class on the body
D. The text-center class on the footer
Solution
Step 1: Check body height setting
Without min-vh-100, the body height is only as tall as content, so footer won't stick at bottom.
Step 2: Verify other classes
Position-fixed fixes footer but not sticky footer pattern; container and text-center affect layout or style but not footer position.
Final Answer:
The min-vh-100 class on the body -> Option C
Quick Check:
Full viewport height needed for sticky footer [OK]
Hint: Add min-vh-100 to body for full height [OK]
Common Mistakes:
Using position-fixed instead of flexbox height
Adding container but missing height
Confusing text alignment with layout
5. You want a sticky footer that also changes background color when the page content is very short or very tall. Which Bootstrap approach correctly combines sticky footer with responsive background color change?
A. Add bg-light for short pages and bg-dark text-white for tall pages using media queries
B. Add bg-light always and use JavaScript to toggle classes on scroll
C. Use position-fixed bottom-0 on footer and bg-primary class
D. Wrap footer in a container and add bg-success class
Solution
Step 1: Understand sticky footer with background color
The sticky footer uses flexbox with full viewport height. To change background color based on page height, CSS media queries are best.
Step 2: Evaluate options for responsive background
Add bg-light for short pages and bg-dark text-white for tall pages using media queries uses Bootstrap background classes with media queries to switch colors depending on viewport or content height, which is correct.
Step 3: Check other options
Add bg-light always and use JavaScript to toggle classes on scroll uses JavaScript unnecessarily; C breaks sticky footer by fixing position; D only adds static background color.
Final Answer:
Add bg-light for short pages and bg-dark text-white for tall pages using media queries -> Option A
Quick Check:
Use media queries + Bootstrap bg classes for responsive footer [OK]
Hint: Use media queries with Bootstrap bg classes [OK]
Common Mistakes:
Using position-fixed breaks sticky footer
Relying on JavaScript instead of CSS
Adding static background without responsiveness
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.