Een CSS-eenheidconverter is een hulpmiddel dat lengtewaarden omzet tussen verschillende CSS-meetsystemen. CSS definieert meer dan een dozijn lengte-eenheden, verdeeld in twee groepen: absolute eenheden zoals px, pt, cm en in die overeenkomen met vaste fysieke afmetingen, en relatieve eenheden zoals rem, em, vw, vh en % die afhankelijk zijn van de context, zoals de lettergrootte of de viewport-afmetingen.
Browsers zetten alle CSS-lengtes om naar pixels tijdens het weergeven. Wanneer u 1.5rem schrijft, vermenigvuldigt de browser 1,5 met de root-lettergrootte (meestal 16px) om 24px te krijgen. Wanneer u 50vw schrijft, neemt de browser de helft van de huidige viewport-breedte. Inzicht in deze relaties is noodzakelijk voor het bouwen van indelingen die schaalbaar zijn op apparaten en de gebruikersinstellingen respecteren, zoals aangepaste lettergroottes die in de browser zijn ingesteld.
De CSS Values and Units Module Level 4-specificatie (W3C) definieert de exacte conversieverhoudingen tussen alle absolute eenheden: 1in = 96px = 72pt = 2,54cm = 25,4mm. Relatieve eenheden hebben geen vaste verhouding omdat ze afhankelijk zijn van de runtime-context. Een gratis CSS-eenheidconverter laat u deze relaties direct berekenen op basis van uw specifieke root-lettergrootte en viewport-afmetingen, zonder enige code te schrijven.
Waarom een CSS-eenheidconverter gebruiken?
CSS-eenheden handmatig omzetten betekent verhoudingen onthouden, een rekenmachine erbij pakken en uw berekeningen dubbel controleren. Dit hulpmiddel voert de conversie uit in uw browser zonder enige omweg.
⚡
Direct omzetten
Voer een waarde in, kies de broneenheid en zie de resultaten in alle 10 CSS-eenheden tegelijk. Geen aparte berekeningen nodig voor px-naar-rem, px-naar-vw of px-naar-pt.
🔒
Uw gegevens blijven privé
Alle conversies worden lokaal in uw browser uitgevoerd. Er worden geen waarden naar een server verzonden, vastgelegd of opgeslagen. Sluit het tabblad en de gegevens zijn verdwenen.
🎯
Afgestemd op uw exacte context
Stel uw root-lettergrootte, viewport-breedte, viewport-hoogte en bovenliggende lettergrootte in. De converter gebruikt deze waarden om nauwkeurige resultaten te produceren voor rem, em, vw, vh en %-eenheden.
📏
Alle CSS-lengte-eenheden gedekt
Ondersteunt px, rem, em, vw, vh, %, pt, cm, mm en in. Of u nu werkt aan schermindelingen, print-stylesheets of responsieve typografie, elke eenheid is gedekt.
Toepassingen van de CSS-eenheidconverter
Front-endontwikkeling
Zet de pixelwaarden uit een ontwerpbestand om naar rem voor een componentenbibliotheek. Wanneer een Figma-mockup een afstand van 24px specificeert, converteer dit dan naar 1,5rem zodat de indeling meebeweegt met de lettergroottevoorkeur van de gebruiker.
Back-end- en full-stack-ontwikkeling
Genereer PDF- of e-mailsjablonen waarbij afmetingen in pt of cm zijn opgegeven. Zet uw CSS-pixelwaarden om naar puntsizes die geschikt zijn voor afdrukken bij server-side rendering met hulpmiddelen zoals Puppeteer of wkhtmltopdf.
DevOps en CI-pipelines
Valideer dat de afstandstokens van een ontwerpsysteem consistente eenheden gebruiken in alle bouwstappen. Controleer snel of een basis van 16px de verwachte rem-waarden produceert in gegenereerde CSS.
QA en visueel testen
Verifieer berekende stijlen tijdens cross-browser testing. Wanneer Chrome DevTools een berekende waarde van 14,4px toont, converteer dit naar rem om te bevestigen dat het overeenkomt met de verwachte 0,9rem uit de stylesheet.
Datavisualisatie
Dimensioneer SVG- of canvas-elementen ten opzichte van de viewport-afmetingen. Zet vaste breedte in pixels van grafieken om naar vw-eenheden, zodat visualisaties een consistent percentage van het scherm vullen op verschillende monitoren.
CSS leren
Begrijp de relatie tussen rem, em en px door te experimenteren met verschillende basisgroottes. Verander de root-lettergrootte van 16px naar 18px en zie hoe elke rem-waarde verschuift.
Referentie voor CSS-lengte-eenheden
CSS definieert 10 veelgebruikte lengte-eenheden. Absolute eenheden hebben een vaste conversie naar pixels. Relatieve eenheden zijn afhankelijk van de context: de root-lettergrootte voor rem, de bovenliggende lettergrootte voor em, en de browser-viewport voor vw en vh.
Eenheid
Naam
Standaardgrootte
Relatief aan
px
Pixel
1px
Fixed; 1px = 1/96 of 1in on screens
rem
Root em
16px (default)
Relative to <html> font-size
em
Em
Inherited
Relative to parent element font-size
vw
Viewport width
1% of viewport
Relative to browser window width
vh
Viewport height
1% of viewport
Relative to browser window height
%
Percentage
Varies
Relative to parent property value
pt
Point
1.333px
Print unit; 1pt = 1/72 of 1in
cm
Centimeter
37.795px
Physical unit; 1cm = 96px / 2.54
mm
Millimeter
3.7795px
Physical unit; 1mm = 1cm / 10
in
Inch
96px
Physical unit; 1in = 96px (CSS spec)
Absolute versus relatieve CSS-eenheden
De keuze tussen absolute en relatieve eenheden beïnvloedt hoe uw indeling reageert op verschillende schermen en gebruikersinstellingen. Elke groep heeft duidelijke afwegingen.
Absolute eenheden (px, pt, cm, mm, in)
Absolute eenheden produceren dezelfde fysieke grootte ongeacht de context. Gebruik px voor randen, schaduwen en elementen die niet mogen schalen. Gebruik pt voor print-stylesheets. De CSS-specificatie definieert 1in = 96px, hoewel de werkelijke fysieke grootte varieert per scherm-DPI.
Relatieve eenheden (rem, em, vw, vh, %)
Relatieve eenheden schalen mee met hun referentiecontext. Gebruik rem voor lettergroottes en afstanden om de gebruikersinstellingen te respecteren. Gebruik em voor componentinterne schaling (opvulling relatief aan de eigen lettergrootte van het element). Gebruik vw/vh voor viewport-vullende indelingen zoals hero-secties.
Veelgebruikte conversietabel px naar rem
Deze tabel gaat uit van een root-lettergrootte van 16px (de standaard in browsers). Als uw project een andere basis gebruikt, deelt u de pixelwaarde door uw basis om de rem-equivalent te krijgen.
px
rem
pt
Typisch gebruik
10
0.625
7.5
Small caption text
12
0.75
9
Body text (compact)
14
0.875
10.5
Default body text
16
1
12
Root font-size (browser default)
18
1.125
13.5
Large body text
20
1.25
15
H4 heading
24
1.5
18
H3 heading
32
2
24
H2 heading
48
3
36
H1 heading
64
4
48
Display / hero text
Codevoorbeelden
Deze voorbeelden laten zien hoe u CSS-eenheden programmatisch kunt omzetten in JavaScript, Python, CSS custom properties en Sass.
JavaScript
// px to rem (given root font-size of 16px)
const pxToRem = (px, base = 16) => px / base
pxToRem(24) // → 1.5
// rem to px
const remToPx = (rem, base = 16) => rem * base
remToPx(1.5) // → 24
// px to vw (given viewport width of 1440px)
const pxToVw = (px, viewport = 1440) => (px / viewport) * 100
pxToVw(360) // → 25
// Dynamic calculation using getComputedStyle
const rootFontSize = parseFloat(
getComputedStyle(document.documentElement).fontSize
) // → 16 on most browsers
Wat is de standaard root-lettergrootte in browsers?
Alle grote browsers (Chrome, Firefox, Safari, Edge) hebben standaard een root-lettergrootte van 16px. Dit betekent dat 1rem = 16px, tenzij de gebruiker of een stylesheet de lettergrootte van het html-element overschrijft. Sommige gebruikers verhogen dit in de browserinstellingen voor toegankelijkheid. Dat is waarom rem de betere standaard is voor tekst in plaats van px.
Hoe zet ik px om naar rem?
Deel de pixelwaarde door de root-lettergrootte. Met de standaard basis van 16px: 24px / 16 = 1,5rem. Als uw project html { font-size: 10px } instelt (een veelgebruikte reset), dan is 24px / 10 = 2,4rem. De formule is altijd: rem = px / root-lettergrootte.
Wat is het verschil tussen rem en em?
rem is relatief aan de lettergrootte van het rootelement (de html-tag), terwijl em relatief is aan de lettergrootte van het bovenliggende element. Dit betekent dat rem consistente afmetingen produceert op de hele pagina, terwijl em zich opstapelt bij nesting. Een 2em binnen een bovenliggend element van 2em wordt 4x de rootgrootte. Gebruik rem voor globale afstanden en lettergroottes; gebruik em wanneer u wilt dat de afmeting meebeweegt met de tekst van de component zelf.
Wanneer moet ik vw- of vh-eenheden gebruiken?
Gebruik vw voor elementen die mee moeten schalen met de breedte van het browservenster, zoals full-width hero-secties of vloeiende typografie (clamp met vw). Gebruik vh voor volledige schermhoogte-secties of viewport-hoogte-indelingen. Wees voorzichtig met vh op mobiele browsers waar de adresbalk de viewport-hoogte wijzigt; de nieuwere dvh (dynamic viewport height)-eenheid lost dit op.
Kan ik verschillende CSS-eenheden combineren in dezelfde eigenschap?
Ja. Met de CSS calc()-functie kunt u elke eenheid combineren in één uitdrukking. Bijvoorbeeld: width: calc(100vw - 2rem) trekt 32px (bij de standaardbasis) af van de volledige viewport-breedte. U kunt ook eenheden combineren in clamp(): font-size: clamp(1rem, 2vw + 0.5rem, 2.5rem) creëert vloeiende typografie die schaalt tussen 16px en 40px.
Hoeveel pixels is 1pt in CSS?
In CSS is 1pt = 1/72 van een inch, en 1 inch = 96px, dus 1pt = 96/72 = 1,333px. Deze verhouding is vastgelegd in de CSS-specificatie, ongeacht de scherm-DPI. Punten worden voornamelijk gebruikt in print-stylesheets en bij het genereren van PDF's. Voor schermontwerp zijn px of rem betere keuzes.
Is de 62,5% lettergrootte-reset nog een goede praktijk?
Het instellen van html { font-size: 62.5% } maakt 1rem = 10px, wat het rekenen vereenvoudigt (24px = 2,4rem). Dit vereist echter dat u de lettergrootte expliciet instelt op het body-element en kan problemen veroorzaken met externe componenten die uitgaan van de standaard basis van 16px. De moderne voorkeur is om de standaard van 16px te behouden en in plaats daarvan een Sass-functie of PostCSS-plugin te gebruiken voor de conversie.