CSS-prijstabelgenerator
Een prijstabel is de kostbaarste plek op je marketingpagina: hij moet helder zijn, in één oogopslag te scannen en de bezoeker naar het abonnement leiden dat je wilt verkopen. Deze generator bouwt een enkele prijskaart in HTML + CSS, met de naam van het abonnement, de prijs en een accentkleur voor de prijs en de call-to-action-knop. Zet meerdere kaarten naast elkaar voor een complete prijstabel en kopieer de code naar je landingspagina.
Zo bouw je een prijstabel
-
1
Voer de naam van het abonnement in
De abonnementsnaam bovenaan de kaart, bijvoorbeeld "Pro".
-
2
Stel de prijs in
De prijs in grote letters, bijvoorbeeld "$29". Het achtervoegsel "/mo" wordt automatisch toegevoegd.
-
3
Kies een accentkleur
Gebruikt voor de prijs en de call-to-action-knop. Kies een kleur die past bij je merk.
-
4
Kopieer de code
De kaart bevat een vaste functielijst en een call-to-action-knop, plus een eigen <style>-blok. Bewerk de onderdelen rechtstreeks in de code.
-
5
Herhaal voor meer abonnementen
Voor een complete prijstabel dupliceer je de kaart voor elk abonnement en leg je ze in een grid.
Basisstructuur
<section class="pricing">
<article class="plan">
<h3>Starter</h3>
<p class="price">$9 <span>/mo</span></p>
<p class="tagline">For solo projects.</p>
<ul class="features">
<li>3 projects</li>
<li>10 GB storage</li>
<li>Community support</li>
</ul>
<a class="cta" href="#">Start free</a>
</article>
<article class="plan featured">
<span class="badge">Most popular</span>
<h3>Pro</h3>
<p class="price">$29 <span>/mo</span></p>
<!-- ... -->
</article>
<article class="plan">
<h3>Team</h3>
<!-- ... -->
</article>
</section>
Responsief grid met drie kolommen
.pricing {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 1.5rem;
align-items: stretch;
}
.plan {
padding: 2rem 1.5rem;
background: #fff;
border: 1px solid #e5e7eb;
border-radius: 12px;
display: flex;
flex-direction: column;
}
.plan.featured {
border: 2px solid #2563eb;
position: relative;
transform: translateY(-4px);
box-shadow: 0 10px 30px rgba(37, 99, 235, 0.15);
}
auto-fit in combinatie met minmax(240px, 1fr) levert drie kolommen op desktop en één kolom op mobiel, zonder dat je verder nog iets hoeft in te stellen.
Het uitgelichte abonnement
Visuele signalen die de aandacht trekken:
- Gekleurde rand in de accentkleur van het merk.
- Kaart iets omhoog met een negatieve margin-top of
translateY(-4px). - Grotere CTA-knop, meestal gevuld in de merkkleur, terwijl de andere abonnementen een outline-knop krijgen.
- Badge (“Meest gekozen”, “Beste prijs-kwaliteitverhouding”) absoluut gepositioneerd bovenaan de kaart.
- Hogere kaart trekt de blik, maar maakt het vergelijken van abonnementen lastiger.
Doe niet alles tegelijk, kies er twee of drie. Te veel signalen maken de hiërarchie juist vlak.
Schakelaar maandelijks / jaarlijks
<div class="billing-toggle">
<button data-active="true">Monthly</button>
<button>Annual · Save 20%</button>
</div>
De schakelaar wisselt de prijzen meestal met een klein beetje JavaScript, of gebruikt de :checked-status van een radiobutton. Zet het kortingspercentage of het bedrag dat de klant bespaart (bijvoorbeeld “Bespaar 20% bij jaarlijks betalen”) meteen in het label van de schakelaar: in veel prijstabellen is dat het meest overtuigende element.
De functieregels opmaken
.features {
list-style: none;
padding: 0;
margin: 1.5rem 0;
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.features li {
display: flex;
align-items: center;
gap: 0.5rem;
}
.features li.yes::before {
content: "";
width: 16px; height: 16px;
background: url(...check.svg);
}
.features li.no {
color: #9ca3af;
text-decoration: line-through;
}
Gebruik een vinkje voor wat “inbegrepen” is, en grijze tekst of een licht kruisje voor wat “niet inbegrepen” is. Streep de tekst nooit door zonder het contrast te verlagen, anders leest die doorhaling juist als nadruk in plaats van als iets dat ontbreekt.
Houd de CTA opvallend
Eén CTA per abonnement, visueel consistent over alle abonnementen. Verschillende teksten per abonnement (“Gratis beginnen”, “Upgraden naar Pro”, “Contact met sales”) mag prima en helpt gebruikers zelfs naar het juiste traject.
Maak de tabel scanbaar
Bezoekers lezen een prijstabel zelden van links naar rechts; ze scannen eerst de prijzen, dan de CTA-knoppen en pas daarna de verschillen in functies. Optimaliseer daarvoor:
- Naam van het abonnement en prijs groot, bovenaan de kaart.
- CTA zichtbaar zonder in de kaart te scrollen.
- Functielijst eronder. Benadruk de verschillen tussen abonnementen in plaats van dezelfde functies in elke kolom te herhalen.
Checklist toegankelijkheid
- Elk abonnement is een eigen
<article>met een eigen<h3>. - De badge “Meest gekozen” is een zichtbaar tekstlabel, niet alleen een kleur (voor kleurenblinde gebruikers).
- CTA-knoppen hebben beschrijvende tekst (“Start de Pro-proefperiode”) in plaats van “Klik hier”.
- De schakelaar voor de betaalperiode heeft
aria-pressedof de semantiek van radiobuttons. - Prijswijzigingen bij het omschakelen worden aangekondigd via
aria-live="polite"als je het met JavaScript bouwt.
Veelgestelde vragen
Drie is de marketingstandaard: makkelijker te scannen en het zet een duidelijke middenoptie in de schijnwerpers. Vier werkt als je echt vier doelgroepen hebt (zzp’er / team / bedrijf / enterprise). Vijf of meer verwart de bezoeker meestal; splits dan op in twee tabellen of voeg een aparte vergelijkingstabel toe.
Dat hangt van je business af. Jaarlijks als standaard benadrukt de korting en verankert een lagere prijs in het hoofd van de bezoeker; maandelijks als standaard is minder pusherig. Gaat het echt om omzet, doe dan een A/B-test. Een compromis: standaard jaarlijks tonen en de maandoptie op één klik afstand houden.
Het grid repeat(auto-fit, minmax(240px, 1fr)) doet dat vanzelf. Onder ongeveer 800px viewportbreedte vallen de kaarten in één kolom, zonder dat je er een media query voor nodig hebt.
Uiterst rechts, als je de abonnementen op oplopende prijs zet. De CTA-tekst moet “Contact met sales” zijn in plaats van een prijs, en de kaart moet er visueel hetzelfde uitzien als de andere zodat de tabel scanbaar blijft. Sommige bedrijven zetten het enterprise-abonnement juist in een apart blok onder de tabel, zodat het de prijsvergelijking niet verstoort.
Gerelateerde tools
ASCII-tabelreferentie
Volledige ASCII-tabel van 0 tot 127 met decimale, hexadecimale, octale en binaire waarden en HTML-numerieke referentienotatie, inclusief control codes zoals NUL, LF en DEL.
HTML-tekenreferentie
Een doorzoekbare lijst met HTML-entiteiten, hun benoemde en numerieke codes, plus kopiëren met één klik voor speciale tekens en symbolen.
Sneltoetsenoverzicht
Zoek gedocumenteerde standaardsneltoetsen voor VS Code, Chrome en Bash met GNU Readline op macOS, Windows en Linux.
HAR-bestandsviewer
Open HAR-netwerkopnamen lokaal, filter verzoeken, bekijk gemaskeerde headers en timing en exporteer opgeschoonde samenvattingen zonder upload.
ASCII naar binair-converter
Converteer elke ASCII-string naar zijn binaire representatie. Elk teken wordt acht bits, gescheiden door spaties, klaar voor protocoltrace of huiswerk.
Willekeurige lettergenerator
Genereer willekeurige A-Z-letters. Kies het aantal, gebruik hoofdletters, kleine letters of gemengd, en gebruik de uitkomst voor spelletjes, opdrachten of lesactiviteiten.