Bootstrap Les 3: Utility classes
Homeโ€บBootstrap-trackโ€บLes 3

๐Ÿ› ๏ธ Utility classes

โฑ Geschatte leestijd: 30 minuten ยท 7 stappen

Utility classes zijn kleine, eendoelige CSS-klassen. In plaats van een klasse te schrijven die padding en kleur en uitlijning regelt, gebruik je drie aparte klassen. Dit maakt Bootstrap razendsnel in de praktijk: je hoeft bijna nooit custom CSS te schrijven voor eenvoudige layouts.

1 Spacing โ€” margin en padding

Het systeem

Spacing klassen volgen het patroon {eigenschap}{zijde}-{grootte}. Eigenschap: m (margin) of p (padding). Zijde: t top, b bottom, s start/links, e end/rechts, x horizontaal, y verticaal. Grootte: 0 t/m 5 (of auto).

Klasse CSS equivalent Waarde
m-3margin: 1rem16px
mt-4margin-top: 1.5rem24px
mb-2margin-bottom: 0.5rem8px
ms-3margin-left: 1rem16px
me-2margin-right: 0.5rem8px
mx-automargin-left/right: autocentreer horizontaal
py-5padding-top/bottom: 3rem48px
px-3padding-left/right: 1rem16px
Spacing in de praktijk
<!-- Knop met ruimte rechts voor de volgende knop -->
<button class="btn btn-primary me-2">Opslaan</button>
<button class="btn btn-secondary">Annuleren</button>

<!-- Sectie met verticale padding -->
<section class="py-5">
  <div class="container">
    <h2 class="mb-3">Kop met margin-bottom</h2>
    <p class="mt-0">Paragraaf zonder marge bovenaan</p>
  </div>
</section>

๐Ÿ”— CSS-link: m-3 = margin: 1rem, mt-4 = margin-top: 1.5rem. Bootstrap gebruikt een schaal van 0.25rem stappen: 0, 0.25rem, 0.5rem, 1rem, 1.5rem, 3rem voor de waarden 0โ€“5.

2 Kleuren โ€” tekst en achtergrond

Bootstrap heeft een vaste set semantische kleuren: primary (blauw), secondary (grijs), success (groen), danger (rood), warning (geel), info (cyaan), light en dark. Je gebruikt ze met text- of bg-.

Kleur-utilities
<!-- Tekstkleur -->
<p class="text-primary">Blauw (primary)</p>
<p class="text-danger">Rood (danger)</p>
<p class="text-success">Groen (success)</p>
<p class="text-muted">Grijs (gedimde tekst)</p>

<!-- Achtergrondkleur + bijpassende tekstkleur -->
<div class="bg-primary text-white p-3">Blauw vlak</div>
<div class="bg-warning text-dark p-3">Geel vlak (donkere tekst!)</div>
<div class="bg-light text-dark p-3">Licht grijs vlak</div>

โš ๏ธ Let op: bg-warning en bg-info zijn lichte kleuren โ€” gebruik dan text-dark voor leesbaarheid. Bij bg-primary, bg-danger, etc. gebruik je text-white.

3 Display utilities โ€” tonen, verbergen en flexbox

Bootstrap's display-utilities werken ook met breakpoints. Zo kun je elementen op mobiel verbergen maar op desktop tonen, of flexbox inschakelen zonder custom CSS.

Display utilities
<!-- Verbergen en tonen -->
<div class="d-none">Altijd verborgen</div>
<div class="d-none d-md-block">Verborgen op mobiel, zichtbaar vanaf md</div>
<div class="d-block d-lg-none">Zichtbaar op mobiel, verborgen vanaf lg</div>

<!-- Flexbox (je kent dit uit de CSS-track!) -->
<div class="d-flex justify-content-between align-items-center">
  <span>Links</span>
  <span>Rechts</span>
</div>

<!-- Flex met gap en wrap -->
<div class="d-flex flex-wrap gap-2">
  <button class="btn btn-sm btn-primary">A</button>
  <button class="btn btn-sm btn-secondary">B</button>
</div>

๐Ÿ”— CSS-link: d-flex justify-content-between is exact display: flex; justify-content: space-between;. d-none d-md-block is display:none met een media query die op 768px omzet naar display:block. Alles wat je kent โ€” Bootstrap heeft het als utility class.

4 Tekst-utilities

Tekst utilities
<!-- Uitlijning -->
<p class="text-start">Links uitgelijnd (standaard)</p>
<p class="text-center">Gecentreerd</p>
<p class="text-end">Rechts uitgelijnd</p>

<!-- Grootte en gewicht -->
<p class="fs-1">Heel groot (fs-1 = 2.5rem)</p>
<p class="fs-6">Klein (fs-6 = 1rem)</p>
<p class="fw-bold">Vet</p>
<p class="fw-light">Licht gewicht</p>
<p class="fst-italic">Cursief</p>

<!-- Afkappen met ellipsis -->
<p class="text-truncate" style="max-width:200px">
  Lange tekst die wordt afgekapt...
</p>

<!-- Lead tekst (grotere introtekst) -->
<p class="lead">Introductietekst iets groter dan normaal</p>

5 Borders, rounded en shadow

Borders, afgeronde hoeken en schaduwen
<!-- Borders -->
<div class="border">Alle kanten</div>
<div class="border-top">Alleen boven</div>
<div class="border border-primary">Gekleurde border</div>

<!-- Afgeronde hoeken -->
<img class="rounded" ...>          <!-- kleine radius -->
<img class="rounded-3" ...>        <!-- grotere radius -->
<img class="rounded-circle" ...>   <!-- perfect cirkel -->
<img class="rounded-pill" ...>     <!-- pill-vorm -->

<!-- Schaduwen -->
<div class="shadow-sm">Kleine schaduw</div>
<div class="shadow">Standaard schaduw</div>
<div class="shadow-lg">Grote schaduw</div>

6 Oefening 1: Utility classes combineren

Opdracht:

โœ“ Voeg py-5 toe aan de <section> (verticale padding)

โœ“ Geef de kop text-center en mb-4

โœ“ Geef de paragraaf text-muted en text-center

โœ“ Voeg d-flex gap-3 justify-content-center mt-4 toe aan de knoppenwrapper

editor
Live preview

7 Oefening 2: Profielkaart met utilities

Opdracht: bouw deze profielkaart na met alleen utility classes

โœ“ Witte achtergrond (bg-white), schaduw (shadow), afgerond (rounded-3), padding (p-4)

โœ“ Avatar: een div met bg-primary rounded-circle d-flex align-items-center justify-content-center, breedte en hoogte 64px

โœ“ Naam in fw-bold fs-5 mt-3 mb-1

โœ“ Functie in text-muted small mb-3

โœ“ Knop: btn btn-primary btn-sm rounded-pill

editor
Live preview

Kennischeck

4 vragen โ€” test je kennis van utility classes.

Bootstrap-track ยท Cheatsheet