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.
More than eighty speakers share what they have learned the hard way.
We listen first, then build a plan around what you actually need.
Three days of keynotes, hands-on workshops and evening meetups.
Virtual passes let you join the main stage live from anywhere.
Group tickets include a private meeting room for your team.
Sponsors meet decision-makers in a relaxed, friendly setting.
The venue is a short walk from the station and fully accessible.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Sticky header demo">
<header class="sticky-top bg-body border-bottom px-3 py-2 fw-semibold">
<i class="bi bi-journal-text" aria-hidden="true"></i> Five things we learned this year
</header>
<div class="p-3">
<p class="small mb-3">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-3">More than eighty speakers share what they have learned the hard way.</p>
<p class="small mb-3">We listen first, then build a plan around what you actually need.</p>
<p class="small mb-3">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-3">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-3">Group tickets include a private meeting room for your team.</p>
<p class="small mb-3">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small mb-3">The venue is a short walk from the station and fully accessible.</p>
</div>
</div>
</div>2Sticky save bar
sticky-bottom keeps form actions at the bottom edge of the scrolling area.
Friendly people answer your questions quickly, by phone, chat or email.
Thousands of attendees already trust us, and we work hard to keep it that way.
Our evening party is the best place to turn talks into friendships.
Every attendee receives a certificate of participation.
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.
We keep things simple, so you can focus on what matters to you.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Sticky save bar demo">
<div class="p-3">
<p class="small mb-3">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small mb-3">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-3">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-3">Every attendee receives a certificate of participation.</p>
<p class="small mb-3">We measure success by how many attendees come back and tell their friends.</p>
<p class="small mb-3">The networking app helps you meet the right people before you arrive.</p>
<p class="small mb-3">We keep things simple, so you can focus on what matters to you.</p>
</div>
<div class="sticky-bottom bg-body-tertiary border-top p-2 d-flex justify-content-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 |
|---|---|---|
| Mia Tanaka | Marketing Lead | Valencia |
| Liam Carter | HR Partner | Toronto |
| Leo Mensah | QA Engineer | Dublin |
| Lucas Patel | Operations Manager | Lisbon |
| Sofia Whitaker | Finance Lead | Copenhagen |
| Luna Ashford | Support Specialist | Dublin |
| Chloe Harlow | Content Writer | Austin |
| Ivy Ibrahim | Customer Success | Cape Town |
| Felix Kowalski | Product Designer | Edinburgh |
| Freya Ortega | Data Analyst | Barcelona |
| Sofia Hughes | Backend Engineer | Porto |
| Zoe Nguyen | Backend Engineer | Austin |
<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>Mia Tanaka</td>
<td>Marketing Lead</td>
<td>Valencia</td>
</tr>
<tr>
<td>Liam Carter</td>
<td>HR Partner</td>
<td>Toronto</td>
</tr>
<tr>
<td>Leo Mensah</td>
<td>QA Engineer</td>
<td>Dublin</td>
</tr>
<tr>
<td>Lucas Patel</td>
<td>Operations Manager</td>
<td>Lisbon</td>
</tr>
<tr>
<td>Sofia Whitaker</td>
<td>Finance Lead</td>
<td>Copenhagen</td>
</tr>
<tr>
<td>Luna Ashford</td>
<td>Support Specialist</td>
<td>Dublin</td>
</tr>
<tr>
<td>Chloe Harlow</td>
<td>Content Writer</td>
<td>Austin</td>
</tr>
<tr>
<td>Ivy Ibrahim</td>
<td>Customer Success</td>
<td>Cape Town</td>
</tr>
<tr>
<td>Felix Kowalski</td>
<td>Product Designer</td>
<td>Edinburgh</td>
</tr>
<tr>
<td>Freya Ortega</td>
<td>Data Analyst</td>
<td>Barcelona</td>
</tr>
<tr>
<td>Sofia Hughes</td>
<td>Backend Engineer</td>
<td>Porto</td>
</tr>
<tr>
<td>Zoe Nguyen</td>
<td>Backend Engineer</td>
<td>Austin</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, Kai
B
- Brennan, Nora
- Brennan, Samir
D
- Duarte, Omar
F
- Fischer, Theo
H
- Haddad, Nadia
K
- Kowalski, Diego
L
- Larsen, Ava
- Lindqvist, Jonah
- Lindqvist, Priya
M
- Mensah, Finn
- Moreau, Hana
- Morgan, Ethan
N
- Novak, Mateo
O
- Okafor, Elena
- Okafor, Ravi
Q
- Quinn, Mia
R
- Rossi, Arjun
- Rossi, Kenji
S
- Sato, Ruby
- Silva, Isla
T
- Tanaka, Leo
V
- Varga, Lea
W
- Whitaker, Liam
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Contacts">
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">A</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Alvarez, Kai</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">B</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Brennan, Nora</li>
<li class="py-1">Brennan, Samir</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">D</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Duarte, Omar</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">F</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Fischer, Theo</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">H</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Haddad, Nadia</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">K</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Kowalski, Diego</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">L</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Larsen, Ava</li>
<li class="py-1">Lindqvist, Jonah</li>
<li class="py-1">Lindqvist, Priya</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">M</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Mensah, Finn</li>
<li class="py-1">Moreau, Hana</li>
<li class="py-1">Morgan, Ethan</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">N</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Novak, Mateo</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">O</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Okafor, Elena</li>
<li class="py-1">Okafor, Ravi</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">Q</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Quinn, Mia</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">R</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Rossi, Arjun</li>
<li class="py-1">Rossi, Kenji</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">S</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Sato, Ruby</li>
<li class="py-1">Silva, Isla</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">T</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Tanaka, Leo</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">V</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Varga, Lea</li>
</ul>
</section>
<section>
<h3 class="sticky-top bg-body-secondary h6 mb-0 px-3 py-1">W</h3>
<ul class="list-unstyled px-3 py-2 mb-0">
<li class="py-1">Whitaker, Liam</li>
</ul>
</section>
</div>
</div>5Sticky sidebar
A column with a sticky-top block stays in view next to a long content column.
Every detail is handled by people who care about getting it right.
Our team has done this many times, so you never have to guess.
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.
Every session is recorded, so you can catch up on anything you missed.
Start in minutes and get help from a real person whenever you need it.
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.
Three days of keynotes, hands-on workshops and evening meetups.
<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-end">
<nav class="sticky-top p-2 small" aria-label="On this page">
<div class="fw-semibold mb-1">
On this page
</div>
<a class="d-block" href="#">Overview</a><a class="d-block" href="#">Setup</a><a class="d-block" href="#">FAQ</a>
</nav>
</div>
<div class="col-8 p-3">
<p class="small mb-3">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-3">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-3">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-3">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-3">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-3">Start in minutes and get help from a real person whenever you need it.</p>
<p class="small mb-3">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-3">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-3">Three days of keynotes, hands-on workshops and evening meetups.</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.
Every detail is handled by people who care about getting it right.
Friendly people answer your questions quickly, by phone, chat or email.
We keep things simple, so you can focus on what matters to you.
We measure success by how many attendees come back and tell their friends.
Clear prices, honest advice and no surprises along the way.
Every attendee receives a certificate of participation.
The venue is a short walk from the station and fully accessible.
Our evening party is the best place to turn talks into friendships.
<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-3 py-2 small">
<i class="bi bi-phone" aria-hidden="true"></i> Sticky from md, normal flow on small screens
</div>
<div class="p-3">
<p class="small mb-3">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-3">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small mb-3">We keep things simple, so you can focus on what matters to you.</p>
<p class="small mb-3">We measure success by how many attendees come back and tell their friends.</p>
<p class="small mb-3">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-3">Every attendee receives a certificate of participation.</p>
<p class="small mb-3">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-3">Our evening party is the best place to turn talks into friendships.</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.
Sponsors meet decision-makers in a relaxed, friendly setting.
Group tickets include a private meeting room for your team.
Workshops are limited to thirty seats, so everyone gets hands-on time.
The networking app helps you meet the right people before you arrive.
Early bird tickets save you up to forty percent until the end of the month.
Virtual passes let you join the main stage live from anywhere.
More than eighty speakers share what they have learned the hard way.
Start in minutes and get help from a real person whenever you need it.
<div class="hp-pos">
<nav class="navbar fixed-top bg-body border-bottom px-3 py-2" aria-label="Demo">
<span class="navbar-brand mb-0 h6"><i class="bi bi-lightning-charge" aria-hidden="true"></i> Solais Labs</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-3 pb-3" style="padding-top:4rem">
<p class="small mb-3">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small mb-3">Group tickets include a private meeting room for your team.</p>
<p class="small mb-3">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-3">The networking app helps you meet the right people before you arrive.</p>
<p class="small mb-3">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-3">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-3">More than eighty speakers share what they have learned the hard way.</p>
<p class="small mb-3">Start in minutes and get help from a real person whenever you need it.</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.
Thousands of attendees already trust us, and we work hard to keep it that way.
Our team has done this many times, so you never have to guess.
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.
Virtual passes let you join the main stage live from anywhere.
Clear prices, honest advice and no surprises along the way.
The venue is a short walk from the station and fully accessible.
<div class="hp-pos">
<nav class="fixed-bottom d-flex bg-body border-top" aria-label="App">
<a href="#" class="flex-fill text-center small py-2 text-decoration-none text-primary" aria-current="page"><i class="bi bi-house" aria-hidden="true"></i><span class="d-block">Home</span></a><a href="#" class="flex-fill text-center small py-2 text-decoration-none text-body-secondary"><i class="bi bi-search" aria-hidden="true"></i><span class="d-block">Search</span></a><a href="#" class="flex-fill text-center small py-2 text-decoration-none text-body-secondary"><i class="bi bi-heart" aria-hidden="true"></i><span class="d-block">Saved</span></a><a href="#" class="flex-fill text-center small py-2 text-decoration-none text-body-secondary"><i class="bi bi-person" aria-hidden="true"></i><span class="d-block">Profile</span></a>
</nav>
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Mobile tab bar demo">
<div class="px-3 pt-3" style="padding-bottom:4.5rem">
<p class="small mb-3">We listen first, then build a plan around what you actually need.</p>
<p class="small mb-3">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-3">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-3">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-3">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-3">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-3">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-3">The venue is a short walk from the station and fully accessible.</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.
- Lucas OrtegaOur favourite tips for busy weeks
- Tariq CarterWhat we learned from last year's feedback
- Maya SatoJoining online: how the virtual pass works
- Ella HarlowWhat makes a panel worth watching
- Amara KimAnnouncing our first keynote speakers
- Owen DelgadoTen talks you should not miss this year
- Mason HaddadHow to get the most out of a conference
- Noah DuarteLooking back at a busy season
- Aria AshfordHow to choose the right ticket
<div class="hp-pos">
<div class="fixed-top text-bg-dark px-3 py-2 small fw-semibold">
<i class="bi bi-inbox" aria-hidden="true"></i> Inbox
</div>
<div class="fixed-bottom bg-body-tertiary border-top px-3 py-1 small text-body-secondary">
Synced just now
</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="d-block">Lucas Ortega</strong>Our favourite tips for busy weeks</li>
<li class="list-group-item small"><strong class="d-block">Tariq Carter</strong>What we learned from last year's feedback</li>
<li class="list-group-item small"><strong class="d-block">Maya Sato</strong>Joining online: how the virtual pass works</li>
<li class="list-group-item small"><strong class="d-block">Ella Harlow</strong>What makes a panel worth watching</li>
<li class="list-group-item small"><strong class="d-block">Amara Kim</strong>Announcing our first keynote speakers</li>
<li class="list-group-item small"><strong class="d-block">Owen Delgado</strong>Ten talks you should not miss this year</li>
<li class="list-group-item small"><strong class="d-block">Mason Haddad</strong>How to get the most out of a conference</li>
<li class="list-group-item small"><strong class="d-block">Noah Duarte</strong>Looking back at a busy season</li>
<li class="list-group-item small"><strong class="d-block">Aria Ashford</strong>How to choose the right ticket</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-3">
<div class="d-flex mb-2">
<div class="px-3 py-2 rounded-3 small bg-body-tertiary" style="max-width:75%">
Group tickets include a private meeting room for your team.
</div>
</div>
<div class="d-flex justify-content-end mb-2">
<div class="px-3 py-2 rounded-3 small text-bg-primary" style="max-width:75%">
More than eighty speakers share what they have learned the hard way.
</div>
</div>
<div class="d-flex mb-2">
<div class="px-3 py-2 rounded-3 small bg-body-tertiary" style="max-width:75%">
We listen first, then build a plan around what you actually need.
</div>
</div>
<div class="d-flex justify-content-end mb-2">
<div class="px-3 py-2 rounded-3 small text-bg-primary" style="max-width:75%">
Every attendee receives a certificate of participation.
</div>
</div>
<div class="d-flex mb-2">
<div class="px-3 py-2 rounded-3 small bg-body-tertiary" style="max-width:75%">
We measure success by how many attendees come back and tell their friends.
</div>
</div>
<div class="d-flex justify-content-end mb-2">
<div class="px-3 py-2 rounded-3 small text-bg-primary" style="max-width:75%">
The networking app helps you meet the right people before you arrive.
</div>
</div>
</div>
<form class="sticky-bottom bg-body border-top p-2 d-flex gap-2">
<label class="visually-hidden" 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.
- Student pass$137.00
- Speaker dinner$115.00
- Masterclass$247.00
- Full access pass$538.99
- Early bird pass$308.00
- Group bundle$2,100
- Recording pass$56.99
<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 d-flex justify-content-between small"><span>Student pass</span><span>$137.00</span></li>
<li class="list-group-item d-flex justify-content-between small"><span>Speaker dinner</span><span>$115.00</span></li>
<li class="list-group-item d-flex justify-content-between small"><span>Masterclass</span><span>$247.00</span></li>
<li class="list-group-item d-flex justify-content-between small"><span>Full access pass</span><span>$538.99</span></li>
<li class="list-group-item d-flex justify-content-between small"><span>Early bird pass</span><span>$308.00</span></li>
<li class="list-group-item d-flex justify-content-between small"><span>Group bundle</span><span>$2,100</span></li>
<li class="list-group-item d-flex justify-content-between small"><span>Recording pass</span><span>$56.99</span></li>
</ul>
<div class="sticky-bottom text-bg-light border-top d-flex justify-content-between align-items-center px-3 py-2">
<strong>Total $3,502.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.
We keep things simple, so you can focus on what matters to you.
Our evening party is the best place to turn talks into friendships.
Thousands of attendees already trust us, and we work hard to keep it that way.
Every detail is handled by people who care about getting it right.
Workshops are limited to thirty seats, so everyone gets hands-on time.
Start in minutes and get help from a real person whenever you need it.
Sponsors meet decision-makers in a relaxed, friendly setting.
Every session is recorded, so you can catch up on anything you missed.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Product filters">
<div class="sticky-lg-top bg-body border-bottom p-2 d-flex gap-2 align-items-center">
<label class="small text-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-3">
<p class="small mb-3">We keep things simple, so you can focus on what matters to you.</p>
<p class="small mb-3">Our evening party is the best place to turn talks into friendships.</p>
<p class="small mb-3">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-3">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-3">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-3">Start in minutes and get help from a real person whenever you need it.</p>
<p class="small mb-3">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small mb-3">Every session is recorded, so you can catch up on anything you missed.</p>
</div>
</div>
</div>13Sticky editor toolbar
Formatting buttons stay at the top of a long document while you edit.
Learn, connect and get inspired
Friendly people answer your questions quickly, by phone, chat or email.
The venue is a short walk from the station and fully accessible.
Three days of keynotes, hands-on workshops and evening meetups.
Every detail is handled by people who care about getting it right.
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.
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="Editor demo">
<div class="sticky-top bg-body-tertiary border-bottom p-1 d-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-3">
<h3 class="h5">Learn, connect and get inspired</h3>
<p class="small mb-3">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small mb-3">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-3">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-3">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-3">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-3">Group tickets include a private meeting room for your team.</p>
<p class="small mb-3">The networking app helps you meet the right people before you arrive.</p>
</div>
</div>
</div>14Sticky day dividers
Date pills in a message thread stick at the top until the next day arrives.
Friendly people answer your questions quickly, by phone, chat or email.
Every attendee receives a certificate of participation.
Clear prices, honest advice and no surprises along the way.
Thousands of attendees already trust us, and we work hard to keep it that way.
Virtual passes let you join the main stage live from anywhere.
More than eighty speakers share what they have learned the hard way.
We measure success by how many attendees come back and tell their friends.
Our evening party is the best place to turn talks into friendships.
Sponsors meet decision-makers in a relaxed, friendly setting.
<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-pill text-bg-secondary">Monday</span>
</div>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">Every attendee receives a certificate of participation.</p>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">Clear prices, honest advice and no surprises along the way.</p>
<div class="sticky-top text-center py-1">
<span class="badge rounded-pill text-bg-secondary">Yesterday</span>
</div>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">More than eighty speakers share what they have learned the hard way.</p>
<div class="sticky-top text-center py-1">
<span class="badge rounded-pill text-bg-secondary">Today</span>
</div>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">We measure success by how many attendees come back and tell their friends.</p>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">Our evening party is the best place to turn talks into friendships.</p>
<p class="small bg-body-tertiary rounded-3 px-3 py-2 mx-3">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
</div>
</div>15Fixed-bottom update notice
A dismissible style notice pinned with fixed-bottom over scrolling content.
Start in minutes and get help from a real person whenever you need it.
We listen first, then build a plan around what you actually need.
We keep things simple, so you can focus on what matters to you.
Workshops are limited to thirty seats, so everyone gets hands-on time.
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.
Every detail is handled by people who care about getting it right.
Three days of keynotes, hands-on workshops and evening meetups.
<div class="hp-pos">
<div class="fixed-bottom m-2 alert alert-info d-flex align-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-3 pt-3" style="padding-bottom:5rem">
<p class="small mb-3">Start in minutes and get help from a real person whenever you need it.</p>
<p class="small mb-3">We listen first, then build a plan around what you actually need.</p>
<p class="small mb-3">We keep things simple, so you can focus on what matters to you.</p>
<p class="small mb-3">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-3">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-3">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-3">Every detail is handled by people who care about getting it right.</p>
<p class="small mb-3">Three days of keynotes, hands-on workshops and evening meetups.</p>
</div>
</div>
</div>16Sticky category chips
A horizontal row of chips with sticky-top above a feed of cards.
What our attendees asked us most
Group tickets include a private meeting room for your team.
A guide to the city for visiting attendees
We listen first, then build a plan around what you actually need.
How to get the most out of a conference
Start in minutes and get help from a real person whenever you need it.
A beginner's guide to getting started
More than eighty speakers share what they have learned the hard way.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Category feed">
<div class="sticky-top bg-body p-2 d-flex flex-wrap gap-1 border-bottom">
<span class="badge rounded-pill text-bg-light border">Workshop</span><span class="badge rounded-pill text-bg-light border">Webinar</span><span class="badge rounded-pill text-bg-light border">Panel</span><span class="badge rounded-pill text-bg-light border">Keynote</span><span class="badge rounded-pill text-bg-light border">Meetup</span>
</div>
<div class="p-2 vstack gap-2">
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">What our attendees asked us most</h3>
<p class="small mb-0">Group tickets include a private meeting room for your team.</p>
</div>
</div>
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">A guide to the city for visiting attendees</h3>
<p class="small mb-0">We listen first, then build a plan around what you actually need.</p>
</div>
</div>
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">How to get the most out of a conference</h3>
<p class="small mb-0">Start in minutes and get help from a real person whenever you need it.</p>
</div>
</div>
<div class="card">
<div class="card-body py-2">
<h3 class="h6 mb-1">A beginner's guide to getting started</h3>
<p class="small mb-0">More than eighty speakers share what they have learned the hard way.</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.
Our team has done this many times, so you never have to guess.
We keep things simple, so you can focus on what matters to you.
Friendly people answer your questions quickly, by phone, chat or email.
We measure success by how many attendees come back and tell their friends.
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.
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="Docs layout">
<div class="sticky-xl-top bg-body-tertiary border-bottom px-3 py-2 small">
<i class="bi bi-list-nested" aria-hidden="true"></i> Contents: Introduction · Install · Usage
</div>
<div class="p-3">
<p class="small mb-3">Our team has done this many times, so you never have to guess.</p>
<p class="small mb-3">We keep things simple, so you can focus on what matters to you.</p>
<p class="small mb-3">Friendly people answer your questions quickly, by phone, chat or email.</p>
<p class="small mb-3">We measure success by how many attendees come back and tell their friends.</p>
<p class="small mb-3">Early bird tickets save you up to forty percent until the end of the month.</p>
<p class="small mb-3">Clear prices, honest advice and no surprises along the way.</p>
<p class="small mb-3">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-3">Every attendee receives a certificate of participation.</p>
</div>
</div>
</div>18Checkout button on phones
sticky-sm-bottom sticks the call to action at the bottom from the sm breakpoint up.
The networking app helps you meet the right people before you arrive.
Sponsors meet decision-makers in a relaxed, friendly setting.
Workshops are limited to thirty seats, so everyone gets hands-on time.
Our evening party is the best place to turn talks into friendships.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Product details">
<div class="p-3">
<img src="../assets/img/product-5.svg" alt="Virtual pass" class="img-fluid rounded mb-3">
<p class="small mb-3">The networking app helps you meet the right people before you arrive.</p>
<p class="small mb-3">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
<p class="small mb-3">Workshops are limited to thirty seats, so everyone gets hands-on time.</p>
<p class="small mb-3">Our evening party is the best place to turn talks into friendships.</p>
</div>
<div class="sticky-sm-bottom bg-body border-top p-2">
<button type="button" class="btn btn-primary w-100"><i class="bi bi-bag-plus" aria-hidden="true"></i> Add to bag · $122.20</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.
Virtual passes let you join the main stage live from anywhere.
Every session is recorded, so you can catch up on anything you missed.
Three days of keynotes, hands-on workshops and evening meetups.
Thousands of attendees already trust us, and we work hard to keep it that way.
Every session is recorded, so you can catch up on anything you missed.
Start in minutes and get help from a real person whenever you need it.
Sponsors meet decision-makers in a relaxed, friendly setting.
<div class="hp-pos">
<div class="hp-pos-scroll" tabindex="0" role="region" aria-label="Reading demo">
<div class="sticky-top bg-body">
<div class="px-3 py-2 small fw-semibold">
What makes a panel worth watching
</div>
<div class="progress rounded-0" role="progressbar" aria-label="Reading progress" aria-valuenow="27" aria-valuemin="0" aria-valuemax="100" style="--ui-progress-height:.25rem">
<div class="progress-bar" style="width:27%">
</div>
</div>
</div>
<div class="p-3">
<p class="small mb-3">The venue is a short walk from the station and fully accessible.</p>
<p class="small mb-3">Virtual passes let you join the main stage live from anywhere.</p>
<p class="small mb-3">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-3">Three days of keynotes, hands-on workshops and evening meetups.</p>
<p class="small mb-3">Thousands of attendees already trust us, and we work hard to keep it that way.</p>
<p class="small mb-3">Every session is recorded, so you can catch up on anything you missed.</p>
<p class="small mb-3">Start in minutes and get help from a real person whenever you need it.</p>
<p class="small mb-3">Sponsors meet decision-makers in a relaxed, friendly setting.</p>
</div>
</div>
</div>20Sticky table footer
A tfoot with sticky-bottom keeps the running total visible in a timesheet.
| Date | Task | Hours |
|---|---|---|
| Jan 4, 2026 | Venue booking | 7 h |
| Jun 20, 2026 | Networking app | 8 h |
| Jun 17, 2026 | Venue booking | 7 h |
| Nov 2, 2025 | Venue booking | 2 h |
| Nov 28, 2025 | Venue booking | 7 h |
| Nov 22, 2025 | Ticketing | 7 h |
| Mar 22, 2026 | Sponsorship | 2 h |
| Jun 20, 2026 | Ticketing | 2 h |
| Oct 28, 2025 | Venue booking | 2 h |
| Jan 23, 2026 | Venue booking | 3 h |
| Total | 47 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>Jan 4, 2026</td>
<td>Venue booking</td>
<td class="text-end">7 h</td>
</tr>
<tr>
<td>Jun 20, 2026</td>
<td>Networking app</td>
<td class="text-end">8 h</td>
</tr>
<tr>
<td>Jun 17, 2026</td>
<td>Venue booking</td>
<td class="text-end">7 h</td>
</tr>
<tr>
<td>Nov 2, 2025</td>
<td>Venue booking</td>
<td class="text-end">2 h</td>
</tr>
<tr>
<td>Nov 28, 2025</td>
<td>Venue booking</td>
<td class="text-end">7 h</td>
</tr>
<tr>
<td>Nov 22, 2025</td>
<td>Ticketing</td>
<td class="text-end">7 h</td>
</tr>
<tr>
<td>Mar 22, 2026</td>
<td>Sponsorship</td>
<td class="text-end">2 h</td>
</tr>
<tr>
<td>Jun 20, 2026</td>
<td>Ticketing</td>
<td class="text-end">2 h</td>
</tr>
<tr>
<td>Oct 28, 2025</td>
<td>Venue booking</td>
<td class="text-end">2 h</td>
</tr>
<tr>
<td>Jan 23, 2026</td>
<td>Venue booking</td>
<td class="text-end">3 h</td>
</tr>
</tbody>
<tfoot class="sticky-bottom">
<tr class="table-light fw-semibold">
<td colspan="2">Total</td>
<td class="text-end">47 h</td>
</tr>
</tfoot>
</table>
</div>
</div>