Foundation CSS is an open-source & responsive front-end framework built by the ZURB foundation in September 2011, which makes it easy to design beautiful responsive websites, apps, and emails that look amazing & can be accessible to any device. The framework is built on SaaS-like bootstrap. It is more sophisticated, flexible, and easily customizable. It also comes with CLI, so it’s easy to use it with module bundlers. It offers the Fastclick.js tool for faster rendering on mobile devices. It is used by many companies such as Facebook, eBay, Mozilla, Adobe, and even Disney. The framework is built on SaaS-like bootstrap. It is more sophisticated, flexible, and easily customizable. It also comes with CLI, so it’s easy to use it with module bundlers. It offers the Fastclick.js tool for faster rendering on mobile devices.
The Sticky Component allows you to make something that stays stuck to the top of the page, while the user scrolls down the page. These components can be utilized to make the sidebars, external links, or topbars. The .sticky class and [data-sticky] attribute is used with an element to create a sticky element. Sticky elements must be wrapped in a container with [data-sticky-container] attribute, which determines the sizing and grid layout.
Syntax:
<div class="Container-Name" data-sticky-container>
<div class="sticky" data-sticky data-margin-top="value">
<img class="thumbnail" src="image_source">
</div>
</div>
Sticky Components:
- Basic: This component can be used to create something that sticks, by specifying the .sticky class and [data-sticky] attribute to an element.
- Advanced: In this case, we can use 2 anchor points i.e the startpoint and endpoint of the sticky using data-top-anchor & data-btm-anchor attributes, having the "idOfSomething" as their values, for the top and bottom anchor points respectively.
- Stick to Top: This is the default case that allows the sticky elements to get stuck to the top, as the user scrolls.
- Stick to Bottom: This attribute provides another way to use sticky elements. Here, the sticky elements stick to the bottom, as the user scrolls. To stick elements to the bottom, add the .sticky class, [data-sticky] and [data-stick-to="bottom"].
- Sticky Navigation: It allows to add a sticky navbar or side nav by specifying the .sticky class to your top bar. Here, the title bar is wrapped inside a sticky container. Adding a data-sticky attribute to the .title-bar class makes it a sticky navbar. The .title-bar-left class and .title-bar-right class are the classes where you can display your information/ content for the navbar.
Syntax for adding the sticky navigation:
<div data-sticky-container>
<div class="title-bar" data-sticky data-options="marginTop:0;">
<div class="title-bar-left"> Content </div>
<div class="title-bar-right"> Content </div>
</div>
</div>
Foundation CSS Sticky Class:
- .sticky: This class enables the elements to be stick to the specified position.
- cell small-* right: This class is used to create the small-sized cell of a specific number & is aligned to the right-hand side position. We can also specify the different alignment position.
Foundation CSS Sticky attributes:
- [data-sticky]: The .sticky class is followed with this attribute, that avails the various functionalities to the element.
- [data-sticky-container]: This attribute can be used to with sticky elements, that must be wrapped in a container, which will determined the sizing and grid layout.
Example: This example illustrates the Foundation CSS Sticky.
HTML
<!DOCTYPE html>
<html>
<head>
<!-- Compressed CSS -->
<link rel="stylesheet" href=
"https://cdn.jsdelivr.net/npm/[email protected]/dist/css/foundation.min.css" />
<!-- Compressed JavaScript -->
<script src=
"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js">
</script>
<script src=
"https://cdn.jsdelivr.net/npm/[email protected]/dist/js/foundation.min.js">
</script>
</head>
<body>
<h1 style="color:green;">GeeksforGeeks</h1>
<h3>Foundation CSS Sticky</h3>
<div class="row">
<div class="columns small-6"
id="example1" data-something>
<p id="doodle">
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
</p>
<p>
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
</p>
<p>
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
</p>
<p>
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
</p>
<p>
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line.
Welcome to GFG. This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
Welcome to GeeksForGeeks. This is an example line. Welcome to GFG.
This is an example line. Welcome to GeeksForGeeks.
This is an example line. Welcome to GFG. This is an example line.
</p>
</div>
<div class="columns small-6 right" data-sticky-container>
<div class="sticky" data-sticky data-anchor="example1">
<img class="thumbnail"
src=
"https://media.geeksforgeeks.org/wp-content/cdn-uploads/20190710102234/download3.png">
</div>
</div>
</div>
<script>
$(document).foundation();
</script>
</body>
</html>
Output:
Foundation CSS StickyExample: The following code is an example of sticky navigation. Even though the page is being scrolled but the position of the title bar remains constant.
HTML
<!DOCTYPE html>
<html>
<head>
<!-- Compressed CSS -->
<link rel="stylesheet" href=
"https://cdn.jsdelivr.net/npm/[email protected]/dist/css/foundation.min.css" />
<!-- Compressed JavaScript -->
<script src=
"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js">
</script>
<script src=
"https://cdn.jsdelivr.net/npm/[email protected]/dist/js/foundation.min.js">
</script>
</head>
<body>
<div data-sticky-container>
<div class="title-bar" data-sticky data-options="marginTop:0;">
<div class="title-bar-left">
<span class="title-bar-title">
GeeksforGeeks
</span>
</div>
<div class="title-bar-right">
<ul class="dropdown menu align-right" data-dropdown-menu>
<li> <a href="#">GFG 1</a>
<ul class="menu">
<li><a href="#">GFG 1A</a></li>
<li><a href="#">GFG 1B</a></li>
</ul>
</li>
<li> <a href="#">GFG 2</a>
<ul class="menu">
<li><a href="#">GFG 2A</a></li>
<li><a href="#">GFG 2B</a></li>
</ul>
</li>
<li><a href="#">GFG 3</a></li>
<li><a href="#">GFG 4</a></li>
</ul>
</div>
</div>
<center>
<h1 style="color: green">GeeksforGeeks</h1>
<h3>Foundation CSS Sticky Navigation</h3>
<p>
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
</p>
<p>
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
</p>
<p>
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
Welcome to GeeksforGeeks.
This is an example line.
Welcome to GFG.
This is an example line.
</p>
</center>
</div>
<script>
$(document).foundation();
</script>
</body>
</html>
Output:
Foundation CSS Sticky Navigation
Reference: https://get.foundation/sites/docs/sticky.html
Similar Reads
CSS Tutorial CSS stands for Cascading Style Sheets. It is a stylesheet language used to style and enhance website presentation. CSS is one of the three main components of a webpage, along with HTML and JavaScript.HTML adds Structure to a web page.JavaScript adds logic to it and CSS makes it visually appealing or
7 min read
CSS Introduction CSS (Cascading Style Sheets) is a language designed to simplify the process of making web pages presentable.It allows you to apply styles to HTML documents by prescribing colors, fonts, spacing, and positioning.The main advantages are the separation of content (in HTML) and styling (in CSS) and the
4 min read
CSS Syntax CSS is written as a rule set, which consists of a selector and a declaration block. The basic syntax of CSS is as follows:The selector is a targeted HTML element or elements to which we have to apply styling.The Declaration Block or " { } " is a block in which we write our CSS.HTML<html> <h
2 min read
CSS Selectors CSS Selectors are used to target HTML elements on your pages, allowing you to apply styles based on their ID, class, type attributes, and more. There are mainly 5 types of selectors.Basic CSS Selectors: These are used to target elements by tag, .class, or # ID for fundamental styling needs.Combinato
7 min read
CSS Comments CSS comments are used to add notes or explanations to your code, helping you and others understand it better. They start with /* and end with */ and can be used for both single-line and multi-line comments. Note: Comments are ignored by browsers, so they wonât affect how your webpage looks or works.
2 min read
CSS Colors CSS colors are used to set the color of different parts of a webpage, like text, background, and borders. This helps make the page look more attractive and easier to read. You can define colors using names, hex codes, RGB values, and more.You can try different formats of colors here- #content-iframe
5 min read
CSS Borders Borders in CSS are used to create a visible outline around an element. They can be customized in terms ofWidth: The thickness of the border.Style: The appearance of the border (solid, dashed, dotted, etc.).Color: The color of the border.You can try different types of borders here- #custom-iframe{ he
5 min read
CSS Margins CSS margins are used to create space around an element, separating it from neighboring elements and the edges of the webpage. They control the layout by adjusting the distance between elements, providing better organization and readability.Syntax:body { margin: value;}HTML<html> <head>
4 min read
CSS Height and Width Height and Width in CSS are used to set the height and width of boxes. Their values can be set using length, percentage, or auto.Width and HeightThe width and height properties in CSS are used to define the dimensions of an element. The values can be set in various units, such as pixels (px), centim
4 min read
CSS Outline CSS outline is a property used to draw a line around an element's border. It does not affect the layout, unlike borders. It's often used to highlight elements, providing a visual emphasis without altering the dimensions of the element.Syntaxselector{ outline: outline-width outline-type outline-color
4 min read