Position
Position helpers pin an element to the top or bottom (fixed-top, fixed-bottom) or keep it in view while its container scrolls (sticky-top, sticky-bottom and the responsive sticky-*-top variants). Every example runs inside its own scrollable frame, so scroll the frames to watch the bars stay put.
1Sticky page header
sticky-top keeps a section header visible while the content below it scrolls. Scroll the frame.
Clear prices, honest advice and no surprises along the way.
The venue is a short walk from the station and fully accessible.
We keep things simple, so you can focus on what matters to you.
Start in minutes and get help from a real person whenever you need it.
Every attendee receives a certificate of participation.
Our evening party is the best place to turn talks into friendships.
Our team has done this many times, so you never have to guess.
Virtual passes let you join the main stage live from anywhere.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Sticky header demo">
<header class="sticky-top bg-page border-b px-4 py-2 font-semibold">
<i class="bi bi-journal-text" aria-hidden="true"></i> Looking back at a busy season
</header>
<div class="p-4">
<p class="small mb-4">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-4">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-4">We keep things simple, so you can focus on what matters to you.</p>
<p class="small mb-4">Start in minutes and get help from a real person whenever you need it.</p>
<p class="small mb-4">Every attendee receives a certificate of participation.</p>
<p class="small mb-4">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-4">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-4">Virtual passes let you join the main stage live from anywhere.</p>
</div>
</div>
</div>2Sticky save bar
sticky-bottom keeps form actions at the bottom edge of the scrolling area.
Workshops are limited to thirty seats, so everyone gets hands-on time.
Thousands of attendees already trust us, and we work hard to keep it that way.
We measure success by how many attendees come back and tell their friends.
We keep things simple, so you can focus on what matters to you.
Sponsors meet decision-makers in a relaxed, friendly setting.
Every session is recorded, so you can catch up on anything you missed.
Every attendee receives a certificate of participation.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Sticky save bar demo">
<div class="p-4">
<p class="small mb-4">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-4">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-4">We measure success by how many attendees come back and tell their friends.</p>
<p class="small mb-4">We keep things simple, so you can focus on what matters to you.</p>
<p class="small mb-4">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small mb-4">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-4">Every attendee receives a certificate of participation.</p>
</div>
<div class="sticky-bottom bg-surface-3 border-t p-2 flex justify-end gap-2">
<button type="button" class="btn btn-sm btn-light">Discard</button>
<button type="button" class="btn btn-sm btn-primary">Save changes</button>
</div>
</div>
</div>3Sticky table header
Put sticky-top on the thead so the column names stay visible in a long table.
| Name | Role | City |
|---|---|---|
| Jonah Mensah | Product Designer | Auckland |
| Owen Varga | Backend Engineer | Denver |
| Kai Novak | HR Partner | Barcelona |
| Priya Lindqvist | QA Engineer | Barcelona |
| Zoe Nguyen | Finance Lead | Lisbon |
| Lea Tanaka | Content Writer | Melbourne |
| Noah Haddad | Support Specialist | Porto |
| Zoe Rossi | QA Engineer | Melbourne |
| Sofia Silva | Marketing Lead | Cape Town |
| Arjun Delgado | Support Specialist | Copenhagen |
| Ruby Fischer | HR Partner | Austin |
| Isla Ibrahim | Content Writer | Dublin |
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Team table">
<table class="table table-sm table-striped mb-0">
<thead class="sticky-top">
<tr>
<th scope="col">Name</th>
<th scope="col">Role</th>
<th scope="col">City</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jonah Mensah</td>
<td>Product Designer</td>
<td>Auckland</td>
</tr>
<tr>
<td>Owen Varga</td>
<td>Backend Engineer</td>
<td>Denver</td>
</tr>
<tr>
<td>Kai Novak</td>
<td>HR Partner</td>
<td>Barcelona</td>
</tr>
<tr>
<td>Priya Lindqvist</td>
<td>QA Engineer</td>
<td>Barcelona</td>
</tr>
<tr>
<td>Zoe Nguyen</td>
<td>Finance Lead</td>
<td>Lisbon</td>
</tr>
<tr>
<td>Lea Tanaka</td>
<td>Content Writer</td>
<td>Melbourne</td>
</tr>
<tr>
<td>Noah Haddad</td>
<td>Support Specialist</td>
<td>Porto</td>
</tr>
<tr>
<td>Zoe Rossi</td>
<td>QA Engineer</td>
<td>Melbourne</td>
</tr>
<tr>
<td>Sofia Silva</td>
<td>Marketing Lead</td>
<td>Cape Town</td>
</tr>
<tr>
<td>Arjun Delgado</td>
<td>Support Specialist</td>
<td>Copenhagen</td>
</tr>
<tr>
<td>Ruby Fischer</td>
<td>HR Partner</td>
<td>Austin</td>
</tr>
<tr>
<td>Isla Ibrahim</td>
<td>Content Writer</td>
<td>Dublin</td>
</tr>
</tbody>
</table>
</div>
</div>4Alphabet section headings
Each letter heading is sticky inside its own section, so the next letter pushes the previous one away.
A
- Alvarez, Mateo
- Ashford, Aria
- Ashford, Ethan
C
- Carter, Finn
- Carter, Leo
D
- Duarte, Felix
F
- Fischer, Chloe
H
- Hughes, Ava
- Hughes, Nadia
I
- Ibrahim, Ivy
K
- Kim, Mia
L
- Larsen, Kai
M
- Mensah, Samir
- Moreau, Ella
- Moreau, Tariq
- Morgan, Lucas
N
- Novak, Maya
O
- Okafor, Priya
- Ortega, Ravi
P
- Patel, Theo
Q
- Quinn, Diego
- Quinn, Owen
R
- Rossi, Luna
W
- Whitaker, Hana
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Contacts">
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">A</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Alvarez, Mateo</li>
<li class="py-1">Ashford, Aria</li>
<li class="py-1">Ashford, Ethan</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">C</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Carter, Finn</li>
<li class="py-1">Carter, Leo</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">D</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Duarte, Felix</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">F</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Fischer, Chloe</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">H</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Hughes, Ava</li>
<li class="py-1">Hughes, Nadia</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">I</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Ibrahim, Ivy</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">K</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Kim, Mia</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">L</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Larsen, Kai</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">M</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Mensah, Samir</li>
<li class="py-1">Moreau, Ella</li>
<li class="py-1">Moreau, Tariq</li>
<li class="py-1">Morgan, Lucas</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">N</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Novak, Maya</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">O</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Okafor, Priya</li>
<li class="py-1">Ortega, Ravi</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">P</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Patel, Theo</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">Q</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Quinn, Diego</li>
<li class="py-1">Quinn, Owen</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">R</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Rossi, Luna</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-surface-2 h6 mb-0 px-4 py-1">W</h3>
<ul class="list-unstyled px-4 py-2 mb-0">
<li class="py-1">Whitaker, Hana</li>
</ul>
</section>
</div>
</div>5Sticky sidebar
A column with a sticky-top block stays in view next to a long content column.
Our evening party is the best place to turn talks into friendships.
Workshops are limited to thirty seats, so everyone gets hands-on time.
Friendly people answer your questions quickly, by phone, chat or email.
Virtual passes let you join the main stage live from anywhere.
The networking app helps you meet the right people before you arrive.
Three days of keynotes, hands-on workshops and evening meetups.
Our team has done this many times, so you never have to guess.
Thousands of attendees already trust us, and we work hard to keep it that way.
We listen first, then build a plan around what you actually need.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Article with sidebar">
<div class="row g-0">
<div class="col-4 border-e">
<nav class="sticky-top p-2 small" aria-label="On this page">
<div class="font-semibold mb-1">
On this page
</div>
<a class="block" href="#">Overview</a><a class="block" href="#">Setup</a><a class="block" href="#">FAQ</a>
</nav>
</div>
<div class="col-8 p-4">
<p class="small mb-4">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-4">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-4">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small mb-4">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-4">The networking app helps you meet the right people before you arrive.</p>
<p class="small mb-4">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-4">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-4">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-4">We listen first, then build a plan around what you actually need.</p>
</div>
</div>
</div>
</div>6Responsive sticky (md and up)
sticky-md-top only sticks from the md breakpoint; on phones the bar scrolls away with the page.
Group tickets include a private meeting room for your team.
More than eighty speakers share what they have learned the hard way.
The venue is a short walk from the station and fully accessible.
Every detail is handled by people who care about getting it right.
Start in minutes and get help from a real person whenever you need it.
Clear prices, honest advice and no surprises along the way.
Early bird tickets save you up to forty percent until the end of the month.
Clear prices, honest advice and no surprises along the way.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Responsive sticky demo">
<div class="sticky-md-top text-bg-primary px-4 py-2 small">
<i class="bi bi-phone" aria-hidden="true"></i> Sticky from md, normal flow on small screens
</div>
<div class="p-4">
<p class="small mb-4">Group tickets include a private meeting room for your team.</p>
<p class="small mb-4">More than eighty speakers share what they have learned the hard way.</p>
<p class="small mb-4">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-4">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-4">Start in minutes and get help from a real person whenever you need it.</p>
<p class="small mb-4">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-4">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-4">Clear prices, honest advice and no surprises along the way.</p>
</div>
</div>
</div>7Fixed-top navbar
fixed-top pins a navbar to the top edge; the frame acts as the viewport, so the bar stays inside the example.
Virtual passes let you join the main stage live from anywhere.
Workshops are limited to thirty seats, so everyone gets hands-on time.
Our evening party is the best place to turn talks into friendships.
Sponsors meet decision-makers in a relaxed, friendly setting.
The networking app helps you meet the right people before you arrive.
We measure success by how many attendees come back and tell their friends.
Our team has done this many times, so you never have to guess.
Every session is recorded, so you can catch up on anything you missed.
<div class="hp-pos">
<nav class="navbar fixed-top bg-page border-b px-4 py-2" aria-label="Demo">
<span class="navbar-brand mb-0 h6"><i class="bi bi-lightning-charge" aria-hidden="true"></i> Zeni Studio</span>
<button type="button" class="btn btn-sm btn-outline-primary">Sign up</button>
</nav>
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Fixed navbar demo">
<div class="px-4 pb-4" style="padding-top:4rem">
<p class="small mb-4">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-4">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-4">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-4">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small mb-4">The networking app helps you meet the right people before you arrive.</p>
<p class="small mb-4">We measure success by how many attendees come back and tell their friends.</p>
<p class="small mb-4">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-4">Every session is recorded, so you can catch up on anything you missed.</p>
</div>
</div>
</div>8Fixed-bottom tab bar
A mobile style tab bar with fixed-bottom; content gets bottom padding so nothing hides behind it.
We listen first, then build a plan around what you actually need.
Every detail is handled by people who care about getting it right.
Three days of keynotes, hands-on workshops and evening meetups.
More than eighty speakers share what they have learned the hard way.
Thousands of attendees already trust us, and we work hard to keep it that way.
The venue is a short walk from the station and fully accessible.
Early bird tickets save you up to forty percent until the end of the month.
Group tickets include a private meeting room for your team.
<div class="hp-pos">
<nav class="fixed-bottom flex bg-page border-t" aria-label="App">
<a href="#" class="flex-auto text-center small py-2 no-underline text-primary-ink" aria-current="page"><i class="bi bi-house" aria-hidden="true"></i><span class="block">Home</span></a><a href="#" class="flex-auto text-center small py-2 no-underline text-muted"><i class="bi bi-search" aria-hidden="true"></i><span class="block">Search</span></a><a href="#" class="flex-auto text-center small py-2 no-underline text-muted"><i class="bi bi-heart" aria-hidden="true"></i><span class="block">Saved</span></a><a href="#" class="flex-auto text-center small py-2 no-underline text-muted"><i class="bi bi-person" aria-hidden="true"></i><span class="block">Profile</span></a>
</nav>
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Mobile tab bar demo">
<div class="px-4 pt-4" style="padding-bottom:4.5rem">
<p class="small mb-4">We listen first, then build a plan around what you actually need.</p>
<p class="small mb-4">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-4">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-4">More than eighty speakers share what they have learned the hard way.</p>
<p class="small mb-4">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-4">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-4">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-4">Group tickets include a private meeting room for your team.</p>
</div>
</div>
</div>9App shell: fixed top and bottom
A fixed-top title bar plus a fixed-bottom status line around a scrolling list.
- Nora KimA beginner's guide to getting started
- Freya SilvaJoining online: how the virtual pass works
- Liam HaddadAnnouncing our first keynote speakers
- Kenji WhitakerHow to choose the right ticket
- Omar KowalskiFive things we learned this year
- Jonah HarlowHow to get the most out of a conference
- Elena AlvarezHow to pitch a talk that gets accepted
- Mason MorganWhat we learned from last year's feedback
- Amara TanakaWhat our attendees asked us most
<div class="hp-pos">
<div class="fixed-top text-bg-dark px-4 py-2 small font-semibold">
<i class="bi bi-inbox" aria-hidden="true"></i> Inbox
</div>
<div class="fixed-bottom bg-surface-3 border-t px-4 py-1 small text-muted">
Synced yesterday
</div>
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="App shell demo">
<ul class="list-group list-group-flush" style="padding-top:2.5rem;padding-bottom:2rem">
<li class="list-group-item small"><strong class="block">Nora Kim</strong>A beginner's guide to getting started</li>
<li class="list-group-item small"><strong class="block">Freya Silva</strong>Joining online: how the virtual pass works</li>
<li class="list-group-item small"><strong class="block">Liam Haddad</strong>Announcing our first keynote speakers</li>
<li class="list-group-item small"><strong class="block">Kenji Whitaker</strong>How to choose the right ticket</li>
<li class="list-group-item small"><strong class="block">Omar Kowalski</strong>Five things we learned this year</li>
<li class="list-group-item small"><strong class="block">Jonah Harlow</strong>How to get the most out of a conference</li>
<li class="list-group-item small"><strong class="block">Elena Alvarez</strong>How to pitch a talk that gets accepted</li>
<li class="list-group-item small"><strong class="block">Mason Morgan</strong>What we learned from last year's feedback</li>
<li class="list-group-item small"><strong class="block">Amara Tanaka</strong>What our attendees asked us most</li>
</ul>
</div>
</div>10Sticky chat composer
The message input uses sticky-bottom so it is always at hand below the conversation.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Chat demo">
<div class="p-4">
<div class="flex mb-2">
<div class="px-4 py-2 rounded-lg small bg-surface-3" style="max-width:75%">
We keep things simple, so you can focus on what matters to you.
</div>
</div>
<div class="flex justify-end mb-2">
<div class="px-4 py-2 rounded-lg small text-bg-primary" style="max-width:75%">
Every attendee receives a certificate of participation.
</div>
</div>
<div class="flex mb-2">
<div class="px-4 py-2 rounded-lg small bg-surface-3" style="max-width:75%">
Friendly people answer your questions quickly, by phone, chat or email.
</div>
</div>
<div class="flex justify-end mb-2">
<div class="px-4 py-2 rounded-lg small text-bg-primary" style="max-width:75%">
Start in minutes and get help from a real person whenever you need it.
</div>
</div>
<div class="flex mb-2">
<div class="px-4 py-2 rounded-lg small bg-surface-3" style="max-width:75%">
Group tickets include a private meeting room for your team.
</div>
</div>
<div class="flex justify-end mb-2">
<div class="px-4 py-2 rounded-lg small text-bg-primary" style="max-width:75%">
Start in minutes and get help from a real person whenever you need it.
</div>
</div>
</div>
<form class="sticky-bottom bg-page border-t p-2 flex gap-2">
<label class="sr-only" for="hp-msg-1234">Message</label>
<input class="form-control form-control-sm" id="hp-msg-1234" type="text" placeholder="Write a message">
<button type="submit" class="btn btn-sm btn-primary" aria-label="Send"><i class="bi bi-send" aria-hidden="true"></i></button>
</form>
</div>
</div>11Sticky cart total
The order total sticks to the bottom of a long basket list.
- VIP pass$925.99
- Virtual pass$106.00
- Evening meetup$23.00
- Panel day ticket$215.00
- Group bundle$1,900
- Workshop ticket$158.99
- Student pass$146.00
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Basket">
<ul class="list-group list-group-flush">
<li class="list-group-item flex justify-between small"><span>VIP pass</span><span>$925.99</span></li>
<li class="list-group-item flex justify-between small"><span>Virtual pass</span><span>$106.00</span></li>
<li class="list-group-item flex justify-between small"><span>Evening meetup</span><span>$23.00</span></li>
<li class="list-group-item flex justify-between small"><span>Panel day ticket</span><span>$215.00</span></li>
<li class="list-group-item flex justify-between small"><span>Group bundle</span><span>$1,900</span></li>
<li class="list-group-item flex justify-between small"><span>Workshop ticket</span><span>$158.99</span></li>
<li class="list-group-item flex justify-between small"><span>Student pass</span><span>$146.00</span></li>
</ul>
<div class="sticky-bottom text-bg-light border-t flex justify-between items-center px-4 py-2">
<strong>Total $3,474.98</strong>
<button type="button" class="btn btn-sm btn-success">Checkout</button>
</div>
</div>
</div>12Sticky filters on large screens
sticky-lg-top keeps the filter row in view on wide screens only.
Virtual passes let you join the main stage live from anywhere.
We listen first, then build a plan around what you actually need.
Every session is recorded, so you can catch up on anything you missed.
Our evening party is the best place to turn talks into friendships.
Early bird tickets save you up to forty percent until the end of the month.
More than eighty speakers share what they have learned the hard way.
The venue is a short walk from the station and fully accessible.
Thousands of attendees already trust us, and we work hard to keep it that way.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Product filters">
<div class="sticky-lg-top bg-page border-b p-2 flex gap-2 items-center">
<label class="small whitespace-nowrap" for="hp-sort-1235">Sort by</label>
<select class="form-select form-select-sm" id="hp-sort-1235">
<option>Newest</option>
<option>Price</option>
<option>Rating</option>
</select>
</div>
<div class="p-4">
<p class="small mb-4">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-4">We listen first, then build a plan around what you actually need.</p>
<p class="small mb-4">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-4">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-4">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-4">More than eighty speakers share what they have learned the hard way.</p>
<p class="small mb-4">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-4">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
</div>
</div>
</div>13Sticky editor toolbar
Formatting buttons stay at the top of a long document while you edit.
Experiences people talk about
Our team has done this many times, so you never have to guess.
We measure success by how many attendees come back and tell their friends.
The networking app helps you meet the right people before you arrive.
Every detail is handled by people who care about getting it right.
Workshops are limited to thirty seats, so everyone gets hands-on time.
Every attendee receives a certificate of participation.
Sponsors meet decision-makers in a relaxed, friendly setting.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Editor demo">
<div class="sticky-top bg-surface-3 border-b p-1 flex gap-1" role="toolbar" aria-label="Formatting">
<button type="button" class="btn btn-sm btn-light" aria-label="Bold"><i class="bi bi-type-bold" aria-hidden="true"></i></button>
<button type="button" class="btn btn-sm btn-light" aria-label="Italic"><i class="bi bi-type-italic" aria-hidden="true"></i></button>
<button type="button" class="btn btn-sm btn-light" aria-label="Bulleted list"><i class="bi bi-list-ul" aria-hidden="true"></i></button>
<button type="button" class="btn btn-sm btn-light" aria-label="Insert link"><i class="bi bi-link-45deg" aria-hidden="true"></i></button>
<button type="button" class="btn btn-sm btn-light" aria-label="Insert image"><i class="bi bi-image" aria-hidden="true"></i></button>
</div>
<div class="p-4">
<h3 class="h5">Experiences people talk about</h3>
<p class="small mb-4">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-4">We measure success by how many attendees come back and tell their friends.</p>
<p class="small mb-4">The networking app helps you meet the right people before you arrive.</p>
<p class="small mb-4">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-4">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-4">Every attendee receives a certificate of participation.</p>
<p class="small mb-4">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
</div>
</div>
</div>14Sticky day dividers
Date pills in a message thread stick at the top until the next day arrives.
Clear prices, honest advice and no surprises along the way.
Friendly people answer your questions quickly, by phone, chat or email.
We keep things simple, so you can focus on what matters to you.
Three days of keynotes, hands-on workshops and evening meetups.
Sponsors meet decision-makers in a relaxed, friendly setting.
Start in minutes and get help from a real person whenever you need it.
More than eighty speakers share what they have learned the hard way.
Group tickets include a private meeting room for your team.
Thousands of attendees already trust us, and we work hard to keep it that way.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Message thread">
<div class="sticky-top text-center py-1">
<span class="badge rounded-full text-bg-secondary">Monday</span>
</div>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">Clear prices, honest advice and no surprises along the way.</p>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">We keep things simple, so you can focus on what matters to you.</p>
<div class="sticky-top text-center py-1">
<span class="badge rounded-full text-bg-secondary">Yesterday</span>
</div>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">Start in minutes and get help from a real person whenever you need it.</p>
<div class="sticky-top text-center py-1">
<span class="badge rounded-full text-bg-secondary">Today</span>
</div>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">More than eighty speakers share what they have learned the hard way.</p>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">Group tickets include a private meeting room for your team.</p>
<p class="small bg-surface-3 rounded-lg px-4 py-2 mx-4">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
</div>
</div>15Fixed-bottom update notice
A dismissible style notice pinned with fixed-bottom over scrolling content.
Our evening party is the best place to turn talks into friendships.
We listen first, then build a plan around what you actually need.
The venue is a short walk from the station and fully accessible.
Three days of keynotes, hands-on workshops and evening meetups.
Early bird tickets save you up to forty percent until the end of the month.
Every session is recorded, so you can catch up on anything you missed.
Every attendee receives a certificate of participation.
The networking app helps you meet the right people before you arrive.
<div class="hp-pos">
<div class="fixed-bottom m-2 alert alert-info flex items-center gap-2 mb-2 py-2 small" role="status">
<i class="bi bi-arrow-repeat" aria-hidden="true"></i><span class="me-auto">A new version is ready.</span>
<button type="button" class="btn btn-sm btn-info">Reload</button>
</div>
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Update notice demo">
<div class="px-4 pt-4" style="padding-bottom:5rem">
<p class="small mb-4">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-4">We listen first, then build a plan around what you actually need.</p>
<p class="small mb-4">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-4">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-4">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-4">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-4">Every attendee receives a certificate of participation.</p>
<p class="small mb-4">The networking app helps you meet the right people before you arrive.</p>
</div>
</div>
</div>16Sticky category chips
A horizontal row of chips with sticky-top above a feed of cards.
Ten talks you should not miss this year
We keep things simple, so you can focus on what matters to you.
Our favourite tips for busy weeks
Our team has done this many times, so you never have to guess.
Highlights from last year's workshops
We measure success by how many attendees come back and tell their friends.
Behind the scenes: building the stage
Workshops are limited to thirty seats, so everyone gets hands-on time.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Category feed">
<div class="sticky-top bg-page p-2 flex flex-wrap gap-1 border-b">
<span class="badge rounded-full text-bg-light border">Webinar</span><span class="badge rounded-full text-bg-light border">Meetup</span><span class="badge rounded-full text-bg-light border">Panel</span><span class="badge rounded-full text-bg-light border">Keynote</span><span class="badge rounded-full text-bg-light border">Workshop</span>
</div>
<div class="p-2 vstack gap-2">
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">Ten talks you should not miss this year</h3>
<p class="small mb-0">We keep things simple, so you can focus on what matters to you.</p>
</div>
</div>
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">Our favourite tips for busy weeks</h3>
<p class="small mb-0">Our team has done this many times, so you never have to guess.</p>
</div>
</div>
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">Highlights from last year's workshops</h3>
<p class="small mb-0">We measure success by how many attendees come back and tell their friends.</p>
</div>
</div>
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">Behind the scenes: building the stage</h3>
<p class="small mb-0">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
</div>
</div>
</div>
</div>
</div>17Table of contents on extra-large screens
sticky-xl-top only sticks at 1200 px and wider, a common choice for docs layouts.
Friendly people answer your questions quickly, by phone, chat or email.
Clear prices, honest advice and no surprises along the way.
Every detail is handled by people who care about getting it right.
Virtual passes let you join the main stage live from anywhere.
We keep things simple, so you can focus on what matters to you.
Virtual passes let you join the main stage live from anywhere.
Our evening party is the best place to turn talks into friendships.
Friendly people answer your questions quickly, by phone, chat or email.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Docs layout">
<div class="sticky-xl-top bg-surface-3 border-b px-4 py-2 small">
<i class="bi bi-list-nested" aria-hidden="true"></i> Contents: Introduction · Install · Usage
</div>
<div class="p-4">
<p class="small mb-4">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small mb-4">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-4">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-4">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-4">We keep things simple, so you can focus on what matters to you.</p>
<p class="small mb-4">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-4">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-4">Friendly people answer your questions quickly, by phone, chat or email.</p>
</div>
</div>
</div>18Checkout button on phones
sticky-sm-bottom sticks the call to action at the bottom from the sm breakpoint up.
Every session is recorded, so you can catch up on anything you missed.
Group tickets include a private meeting room for your team.
Clear prices, honest advice and no surprises along the way.
The networking app helps you meet the right people before you arrive.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Product details">
<div class="p-4">
<img src="../assets/img/product-5.svg" alt="Virtual pass" class="img-fluid rounded-md mb-4">
<p class="small mb-4">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-4">Group tickets include a private meeting room for your team.</p>
<p class="small mb-4">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-4">The networking app helps you meet the right people before you arrive.</p>
</div>
<div class="sticky-sm-bottom bg-page border-t p-2">
<button type="button" class="btn btn-primary w-full"><i class="bi bi-bag-plus" aria-hidden="true"></i> Add to bag · $66.59</button>
</div>
</div>
</div>19Reading progress header
A sticky header with a thin progress bar showing how far the reader has come.
The venue is a short walk from the station and fully accessible.
Sponsors meet decision-makers in a relaxed, friendly setting.
Every detail is handled by people who care about getting it right.
Three days of keynotes, hands-on workshops and evening meetups.
Workshops are limited to thirty seats, so everyone gets hands-on time.
Early bird tickets save you up to forty percent until the end of the month.
Thousands of attendees already trust us, and we work hard to keep it that way.
Every attendee receives a certificate of participation.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Reading demo">
<div class="sticky-top bg-page">
<div class="px-4 py-2 small font-semibold">
A guide to the city for visiting attendees
</div>
<div class="progress rounded-none" role="progressbar" aria-label="Reading progress" aria-valuenow="74" aria-valuemin="0" aria-valuemax="100" style="--ui-progress-height:.25rem">
<div class="progress-bar" style="width:74%">
</div>
</div>
</div>
<div class="p-4">
<p class="small mb-4">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-4">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small mb-4">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-4">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-4">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-4">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-4">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-4">Every attendee receives a certificate of participation.</p>
</div>
</div>
</div>20Sticky table footer
A tfoot with sticky-bottom keeps the running total visible in a timesheet.
| Date | Task | Hours |
|---|---|---|
| Apr 2, 2026 | Ticketing | 2 h |
| Nov 12, 2025 | Ticketing | 7 h |
| Sep 15, 2025 | Venue booking | 8 h |
| Oct 7, 2026 | Networking app | 1 h |
| Jun 5, 2026 | Live streaming | 3 h |
| May 28, 2026 | Sponsorship | 4 h |
| Jul 24, 2026 | Sponsorship | 3 h |
| Oct 9, 2025 | Sponsorship | 2 h |
| May 4, 2026 | Ticketing | 1 h |
| Oct 22, 2025 | Ticketing | 1 h |
| Total | 32 h | |
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Timesheet">
<table class="table table-sm mb-0">
<thead>
<tr>
<th scope="col">Date</th>
<th scope="col">Task</th>
<th scope="col" class="text-end">Hours</th>
</tr>
</thead>
<tbody>
<tr>
<td>Apr 2, 2026</td>
<td>Ticketing</td>
<td class="text-end">2 h</td>
</tr>
<tr>
<td>Nov 12, 2025</td>
<td>Ticketing</td>
<td class="text-end">7 h</td>
</tr>
<tr>
<td>Sep 15, 2025</td>
<td>Venue booking</td>
<td class="text-end">8 h</td>
</tr>
<tr>
<td>Oct 7, 2026</td>
<td>Networking app</td>
<td class="text-end">1 h</td>
</tr>
<tr>
<td>Jun 5, 2026</td>
<td>Live streaming</td>
<td class="text-end">3 h</td>
</tr>
<tr>
<td>May 28, 2026</td>
<td>Sponsorship</td>
<td class="text-end">4 h</td>
</tr>
<tr>
<td>Jul 24, 2026</td>
<td>Sponsorship</td>
<td class="text-end">3 h</td>
</tr>
<tr>
<td>Oct 9, 2025</td>
<td>Sponsorship</td>
<td class="text-end">2 h</td>
</tr>
<tr>
<td>May 4, 2026</td>
<td>Ticketing</td>
<td class="text-end">1 h</td>
</tr>
<tr>
<td>Oct 22, 2025</td>
<td>Ticketing</td>
<td class="text-end">1 h</td>
</tr>
</tbody>
<tfoot class="sticky-bottom">
<tr class="table-light font-semibold">
<td colspan="2">Total</td>
<td class="text-end">32 h</td>
</tr>
</tfoot>
</table>
</div>
</div>