Text utilities handle alignment (with responsive variants), wrapping, truncation, breaking, transforms, font size, weight and style, line height, monospace and decoration. Combine them to build headings, meta lines and price tags without touching CSS.
1Text alignment
text-start, text-center and text-end.
text-start
text-center
text-end
<div class="d-grid gap-2 small">
<p class="text-start border rounded-3 p-2 mb-0">text-start</p>
<p class="text-center border rounded-3 p-2 mb-0">text-center</p>
<p class="text-end border rounded-3 p-2 mb-0">text-end</p>
</div>2Responsive alignment
text-center text-sm-start text-lg-end changes alignment per breakpoint.
Our team has done this many times, so you never have to guess.
<p class="text-center text-sm-start text-lg-end border rounded-3 p-2 mb-0">Our team has done this many times, so you never have to guess.</p>3Wrap and no wrap
text-nowrap keeps text on one line, text-wrap allows wrapping (for example inside a badge).
<div class="d-grid gap-2" style="max-width:14rem">
<div class="border rounded-3 p-2 text-nowrap overflow-hidden small">
text-nowrap: Our team has done this many times, so you never have to guess.
</div>
<span class="badge text-bg-primary text-wrap text-start">text-wrap badge: Our team has done this many times, so you never have to guess.</span>
</div>4Truncate
text-truncate cuts a single line with an ellipsis; it needs a block or inline-block with a width.
<div class="d-grid gap-2" style="max-width:18rem">
<div class="text-truncate border rounded-3 p-2">
Clear prices, honest advice and no surprises along the way. Cooking classes on Saturday mornings teach you our favourite recipes.
</div>
<span class="d-inline-block text-truncate border rounded-3 p-2" style="max-width:150px">Taste the city's favourite kitchen</span>
</div>5Break long words
text-break wraps very long strings that have no spaces.
lyraia-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
<p class="text-break border rounded-3 p-2 mb-0 small" style="max-width:18rem">lyraia-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</p>6Text transform
text-lowercase, text-uppercase and text-capitalize.
<div class="d-grid gap-1">
<span class="text-lowercase">Simple dishes, honest ingredients</span> <span class="text-uppercase">Simple dishes, honest ingredients</span> <span class="text-capitalize">honest release fast experience</span>
</div>7Font sizes
fs-1 to fs-6 set the size without changing the element.
fs-1
fs-2
fs-3
fs-4
fs-5
fs-6
<div>
<p class="fs-1 mb-0">fs-1</p>
<p class="fs-2 mb-0">fs-2</p>
<p class="fs-3 mb-0">fs-3</p>
<p class="fs-4 mb-0">fs-4</p>
<p class="fs-5 mb-0">fs-5</p>
<p class="fs-6 mb-0">fs-6</p>
</div>8Font weights
fw-bold, fw-bolder, fw-semibold, fw-medium, fw-normal, fw-light and fw-lighter.
<div class="d-grid gap-1">
<span class="fw-bold">fw-bold</span><span class="fw-bolder">fw-bolder</span><span class="fw-semibold">fw-semibold</span> <span class="fw-medium">fw-medium</span><span class="fw-normal">fw-normal</span><span class="fw-light">fw-light</span><span class="fw-lighter">fw-lighter</span>
</div>9Italic and normal
fst-italic slants text, fst-normal resets it inside italic parents.
Our menu changes with the seasons and the best produce from nearby farms. fst-normal inside Bright update smart
<p class="fst-italic mb-0">Our menu changes with the seasons and the best produce from nearby farms. <span class="fst-normal fw-semibold">fst-normal inside</span> Bright update smart</p>10Line height
lh-1, lh-sm, lh-base and lh-lg on the same paragraph.
lh-1Our sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.
lh-smOur sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.
lh-baseOur sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.
lh-lgOur sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.
<div class="row g-3 small">
<div class="col-6 col-md-3">
<code>lh-1</code>
<p class="lh-1 mb-0">Our sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.</p>
</div>
<div class="col-6 col-md-3">
<code>lh-sm</code>
<p class="lh-sm mb-0">Our sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.</p>
</div>
<div class="col-6 col-md-3">
<code>lh-base</code>
<p class="lh-base mb-0">Our sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.</p>
</div>
<div class="col-6 col-md-3">
<code>lh-lg</code>
<p class="lh-lg mb-0">Our sommelier has paired each dish with wines from small family vineyards. We measure success by how many guests come back and tell their friends.</p>
</div>
</div>11Monospace
font-monospace for IDs, codes and figures that should line up.
- #PO-9718 $227.95
- #PO-5633 $822.58
- #ORD-9341 $932.02
<ul class="list-unstyled mb-0 font-monospace small">
<li>#PO-9718 $227.95</li>
<li>#PO-5633 $822.58</li>
<li>#ORD-9341 $932.02</li>
</ul>12Text decoration
text-decoration-underline, -line-through and -none.
<div class="d-flex flex-wrap gap-3">
<span class="text-decoration-underline">underline</span> <span class="text-decoration-line-through">line-through</span> <a href="#" class="text-decoration-none">link without underline</a>
</div>13Lead and small
lead for an intro paragraph, small for fine print.
We have been feeding this neighbourhood for over a decade, and we still love it.
Bread is baked every morning and pasta is rolled by hand in our kitchen.
<div>
<p class="lead">We have been feeding this neighbourhood for over a decade, and we still love it.</p>
<p class="small text-body-secondary mb-0">Bread is baked every morning and pasta is rolled by hand in our kitchen.</p>
</div>14Display headings
display-1 to display-6 for oversized hero headings.
display-4
display-5
display-6
<div>
<p class="display-4 mb-0">display-4</p>
<p class="display-5 mb-0">display-5</p>
<p class="display-6 mb-0">display-6</p>
</div>15Article header
Uppercase eyebrow, large bold title, muted meta line - all text utilities.
Wood-fired, slow-cooked, unforgettable
<header>
<div class="text-uppercase small fw-bold text-primary">
Specials
</div>
<h3 class="fs-2 fw-bold lh-sm text-body-emphasis mb-2">Wood-fired, slow-cooked, unforgettable</h3>
<div class="small text-body-secondary">
By <span class="fw-medium">Priya Kowalski</span> · May 22, 2026
</div>
</header>16Truncated table cells
text-truncate with a max width keeps long names in one line inside a table.
| Name | Size |
|---|---|
| update-fast-final-version-approved.pdf | 8 MB |
| experience-Auckland-photos-2025-10-02.zip | 340 MB |
<table class="table table-sm small mb-0" style="table-layout:fixed">
<thead>
<tr>
<th scope="col">Name</th>
<th scope="col" class="text-end" style="width:6rem">Size</th>
</tr>
</thead>
<tbody>
<tr>
<td class="text-truncate">update-fast-final-version-approved.pdf</td>
<td class="text-end">8 MB</td>
</tr>
<tr>
<td class="text-truncate">experience-Auckland-photos-2025-10-02.zip</td>
<td class="text-end">340 MB</td>
</tr>
</tbody>
</table>17Quote typography
fs-5, fst-italic and lh-lg for a calm testimonial.
“Private dining rooms seat up to forty guests for birthdays and business dinners.”
<figure class="mb-0">
<blockquote class="fs-5 fst-italic lh-lg mb-2"><p class="mb-0">“Private dining rooms seat up to forty guests for birthdays and business dinners.”</p></blockquote>
<figcaption class="small fw-semibold text-uppercase">Elena Larsen</figcaption>
</figure>18Long button label
text-wrap on a button lets a long label wrap on narrow screens.
<button type="button" class="btn btn-outline-primary text-wrap" style="max-width:14rem">A table for every occasion</button>19Highlight and marks
mark highlights a search term inside text; fw-semibold emphasises numbers.
Found 20 results for plan in Desserts.
<p class="mb-0">Found <span class="fw-semibold">20</span> results for <mark>plan</mark> in Desserts.</p>20Centred pricing text
text-center with fs-1, fw-bold and lh-1 for a plan price.
<div class="text-center border rounded-4 p-4" style="max-width:16rem">
<div class="text-uppercase small fw-semibold text-body-secondary">
Pro
</div>
<div class="fs-1 fw-bold lh-1 my-2">
$29.38
</div>
<div class="small text-body-secondary">
per month, billed yearly
</div>
</div>