ToolDeck

CSS Minifier

Minificeer CSS door witruimte en opmerkingen te verwijderen

Probeer een voorbeeld

CSS-invoer

Geminificeerde CSS

Draait lokaal · Veilig om secrets te plakken
Geminificeerde CSS verschijnt hier…

Wat is CSS-minificatie?

CSS-minificatie is het proces van het verwijderen van alle onnodige tekens uit een stylesheet zonder het gedrag ervan te veranderen. Dit betekent het verwijderen van witruimte, regelafbrekingen, opmerkingen en overbodige syntaxis zoals afsluitende puntkomma's en overbodige aanhalingstekens. De browser parseert geminificeerde CSS identiek aan het origineel. De W3C CSS Syntax Module definieert de grammatica; witruimte tussen tokens is optioneel, behalve waar het identifiers van elkaar scheidt. Minificatie maakt hier gebruik van door alles samen te voegen tot het minimale aantal vereiste tekens.

Een online CSS-minifier neemt uw opgemaakte stylesheet en produceert een compacte versie die geoptimaliseerd is voor overdrachtsgrootte. Typische besparingen liggen tussen 15% en 40%, afhankelijk van hoeveel witruimte en hoeveel opmerkingen de bron bevat. Voor een stylesheet van 50 KB betekent dit 7–20 KB minder bytes die bij elke paginaweergave over het netwerk worden verstuurd. Gecombineerd met gzip- of Brotli-compressie op de server verkleint minificatie de uiteindelijke overdrachtsgrootte verder, omdat de gecomprimeerde uitvoer van al-geminificeerde CSS kleiner is dan het comprimeren van het opgemaakte origineel.

Minificatie is een standaardstap in front-end bouwpijplijnen. Hulpmiddelen zoals cssnano, clean-css en esbuild voeren minificatie uit als onderdeel van het bouwproces. Maar tijdens de ontwikkeling moet u vaak een enkel fragment minificeren voor tests, een kritiek CSS-blok inline plaatsen of controleren hoeveel een stylesheet krimpt voordat u het toevoegt aan een bundelconfiguratie. Dat is waar een browser-gebaseerde CSS-minifier van pas komt: plak CSS, ontvang de geminificeerde uitvoer, kopieer hem en ga door.

Before · css
After · css
/* Main navigation styles */
.nav {
  display: flex;
  align-items: center;
  padding: 1rem 2rem;
  background-color: #1e293b;
}

/* Links inside nav */
.nav a {
  color: #e2e8f0;
  text-decoration: none;
  margin-right: 1.5rem;
  transition: color 0.2s ease;
}

.nav a:hover {
  color: #818cf8;
}
.nav{display:flex;align-items:center;padding:1rem 2rem;background-color:#1e293b}.nav a{color:#e2e8f0;text-decoration:none;margin-right:1.5rem;transition:color .2s ease}.nav a:hover{color:#818cf8}

Waarom deze CSS Minifier gebruiken?

Plak een willekeurige CSS en ontvang geminificeerde uitvoer in milliseconden. Geen buildtool-configuratie, geen CLI-opdrachten, geen account vereist.

Directe minificatie
De uitvoer wordt bijgewerkt terwijl u typt of plakt. U ziet het geminificeerde resultaat en de bytebesparing direct, zonder te wachten op een bouwstap.
🔒
Privacy-eerst verwerking
Alle minificatie wordt lokaal in uw browser uitgevoerd via JavaScript. Uw CSS verlaat uw apparaat nooit en wordt nooit naar een server geüpload.
📦
Nauwkeurige grootterapportage
Zie de originele grootte, geminificeerde grootte en procentuele vermindering naast elkaar. Handig voor het inschatten van prestatiewinst voordat u een wijziging in een bouwpijplijn doorvoert.
📋
Geen aanmelding vereist
Open de pagina, plak uw CSS, kopieer het resultaat. Geen registratie, geen limieten, geen afgesloten functies. Het volledige hulpmiddel is beschikbaar bij elk bezoek.

Toepassingen van de CSS Minifier

Front-end prestatieoptimalisatie
Minificeer kritieke CSS voordat u deze inline plaatst in het head-element van uw HTML. Kleinere inline CSS leidt tot een snellere First Contentful Paint, met name op mobiele verbindingen.
Back-end e-mailsjablonen
E-mailclients negeren externe stylesheets en hebben strikte groottelimieten. Minificeer uw inline CSS om HTML-e-mails onder de afkapdrempel te houden (102 KB voor Gmail).
DevOps en bouwverificatie
Vergelijk de geminificeerde uitvoer van uw buildtool met dit hulpmiddel om te controleren of cssnano of clean-css correct is geconfigureerd en optimale resultaten produceert.
QA-groottebudgettering
Plak een leveranciersstylesheet om de geminificeerde grootte te toetsen aan uw prestatiebudget. Bepaal of tree-shaking of vervanging nodig is voordat u het aan het project toevoegt.
Data-engineering en web scraping
Bij het extraheren van CSS uit gecrawlde pagina's minificeert u het om witruimteverschillen tussen bronnen te normaliseren vóór vergelijking of opslag.
CSS-optimalisatie leren
Studenten kunnen CSS plakken en precies zien welke tekens de minifier verwijdert. Door invoer en uitvoer te vergelijken leert u welke onderdelen van de CSS-syntaxis betekenisvol zijn voor browsers en welke puur cosmetisch zijn.

CSS-minificatietechnieken

Een CSS-minifier past verschillende transformaties toe om de bestandsgrootte te verkleinen. Elke transformatie richt zich op een ander type redundantie in de bron. De onderstaande tabel geeft de belangrijkste technieken en hun typische besparing op een opgemaakte stylesheet:

TechniekWat het doetTypische besparing
Whitespace removalStrips spaces, tabs, and newlines between tokens15–25%
Comment strippingRemoves /* ... */ block comments5–15%
Zero shortening0px → 0, 0.5 → .51–3%
Shorthand colors#ffffff → #fff, #aabbcc → #abc1–2%
Semicolon removalDrops the last semicolon before }<1%
Quote removalfont-family: "Arial" → font-family: Arial<1%

De besparingspercentages variëren per invoer. Zwaar becommentarieerde bestanden profiteren meer van het verwijderen van opmerkingen, terwijl al-compacte bestanden een kleinere winst zien. De meest betrouwbare winst komt van het verwijderen van witruimte en het optimaliseren van afkortingen. Geavanceerde minifiers zoals cssnano voegen ook dubbele selectors samen, klappen longhand-eigenschappen in tot afkortingen (margin-top + margin-right + margin-bottom + margin-left tot margin) en verwijderen overschreven declaraties.

Minificatie versus Gzip-compressie

Minificatie en compressie vullen elkaar aan — ze zijn niet uitwisselbaar. Ze werken op verschillende lagen en stapelen bovenop elkaar:

CSS-minificatie (dit hulpmiddel)
Werkt op het CSS-syntaxisniveau. Verwijdert witruimte, opmerkingen en herschrijft verkorte notaties. Wordt eenmalig uitgevoerd tijdens het bouwen. De uitvoer is geldige CSS die browsers direct kunnen parseren. Typische vermindering: 15–40% van de originele bestandsgrootte.
Gzip / Brotli-compressie
Werkt op byteniveau met algemene compressie-algoritmen. Toegepast door de webserver bij elke respons (of vooraf gecomprimeerd bij implementatie). Werkt op elk bestandstype. Typische vermindering: 60–80% van de geminificeerde grootte. Beide tegelijk gebruiken levert de kleinste overdrachtsgrootte op.

Codevoorbeelden

CSS programmatisch minificeren in verschillende talen en omgevingen:

JavaScript (cssnano + PostCSS)
import postcss from 'postcss'
import cssnano from 'cssnano'

const input = `
.nav {
  display: flex;
  padding: 0px 1rem;
  color: #ffffff;
  /* TODO: update color */
}
`

const result = await postcss([cssnano]).process(input, { from: undefined })
console.log(result.css)
// → ".nav{display:flex;padding:0 1rem;color:#fff}"
Python (csscompressor)
import csscompressor

css = """
.nav {
  display: flex;
  padding: 0px 1rem;
  color: #ffffff;
  /* navigation styles */
}
"""

minified = csscompressor.compress(css)
print(minified)
# → ".nav{display:flex;padding:0 1rem;color:#fff}"
Go (tdewolff/minify)
package main

import (
	"fmt"
	"github.com/tdewolff/minify/v2"
	"github.com/tdewolff/minify/v2/css"
)

func main() {
	m := minify.New()
	m.AddFunc("text/css", css.Minify)

	input := ".nav { display: flex; padding: 0px 1rem; color: #ffffff; }"
	output, _ := m.String("text/css", input)
	fmt.Println(output)
	// → ".nav{display:flex;padding:0 1rem;color:#fff}"
}
CLI (cssnano / clean-css)
# Using cssnano via PostCSS CLI
npx postcss styles.css --use cssnano -o styles.min.css

# Using clean-css CLI
npx clean-css-cli styles.css -o styles.min.css

# Quick one-liner with Node.js
node -e "const CleanCSS=require('clean-css');console.log(new CleanCSS().minify('body { margin: 0px; }').styles)"
# → "body{margin:0}"

Veelgestelde vragen

Wat is het verschil tussen CSS-minificatie en CSS-compressie?
Minificatie herschrijft de CSS-broncode om onnodige tekens te verwijderen (witruimte, opmerkingen, overbodige syntaxis) terwijl het identieke gedrag behouden blijft. Compressie (gzip, Brotli) codeert de bytes van het bestand in een compacter binair formaat op de transportlaag. Minificatie produceert kleinere CSS-bestanden op schijf; compressie vermindert de bytes die via HTTP worden verstuurd. De beste aanpak is beide toepassen: eerst minificeren, dan de geminificeerde uitvoer door de server laten comprimeren.
Kan CSS-minificatie iets breken?
Standaard minificatie behoudt het CSS-gedrag. Witruimte binnen tekenreekswaarden (zoals content-eigenschappen) wordt bewaard door alle grote minifiers. Agressieve optimalisaties zoals het samenvoegen van selectors of het herordenen van eigenschappen kunnen echter de specificiteit of overschrijvingsvolgorde wijzigen. Als u de standaardinstelling van cssnano gebruikt, zijn deze risicovolle transformaties uitgeschakeld. Dit hulpmiddel voert alleen veilige minificatie uit: het verwijderen van witruimte, het verwijderen van opmerkingen en het optimaliseren van afkortingen.
Hoeveel kleiner wordt CSS na minificatie?
Typische vermindering is 15–40% van de originele opgemaakte bestandsgrootte. Goed becommentarieerde bestanden met ruime witruimte zien de bovengrens van dat bereik. Al-compacte CSS zonder opmerkingen krimpt mogelijk slechts met 10–15%. De exacte besparing hangt af van de codeerstijl, de dichtheid van opmerkingen en of de bron longhand-eigenschappen gebruikt die kunnen worden samengevouwen tot afkortingen.
Moet ik CSS handmatig minificeren of een buildtool gebruiken?
Voor productiebuilds gebruikt u altijd een buildtool (PostCSS met cssnano, esbuild of het css-minimizer-webpack-plugin van webpack). Geautomatiseerde minificatie wordt bij elke build uitgevoerd en verwerkt alle bestanden. Een browser-gebaseerde minifier is handig voor eenmalige taken: het inline plaatsen van een kritiek CSS-fragment, het controleren van de geminificeerde grootte van een leveranciersstylesheet of het minificeren van een snel prototype vóór het delen.
Kan ik SCSS of LESS met dit hulpmiddel minificeren?
Dit hulpmiddel minificeert standaard CSS. SCSS en LESS zijn preprocessortalen die compileren naar CSS. Compileer uw SCSS of LESS eerst naar CSS (met sass of lessc) en plak daarna de gecompileerde uitvoer hier. Het minificeren van ruwe SCSS-syntaxis kan opmerkingen verwijderen die het compilatiegedrag sturen, zoals //! preserve-opmerkingen of @use-annotaties.
Is geminificeerde CSS moeilijker te debuggen?
Ja, geminificeerde CSS is één enkele regel zonder opmaak, wat het moeilijk leesbaar maakt in DevTools. De standaardoplossing zijn source maps. Buildtools zoals PostCSS en esbuild genereren .map-bestanden waarmee browser-DevTools de originele opgemaakte bron kunnen weergeven terwijl de browser de geminificeerde versie laadt. Voor productiedebugging zonder source maps plakt u de geminificeerde CSS in een CSS-formatter om de leesbaarheid te herstellen.
Wat is het verschil tussen een CSS-minifier en een CSS-compressor?
In gangbaar gebruik zijn de termen uitwisselbaar. Beide verwijzen naar het verwijderen van onnodige tekens uit CSS om de bestandsgrootte te verkleinen. Sommige hulpmiddelen gebruiken 'compressor' in hun naam (zoals csscompressor voor Python) maar voeren standaard minificatie uit. Het woord 'compressie' kan ook verwijzen naar gzip/Brotli-codering, wat een apart proces op serverniveau is. Als u 'CSS-compressor' ziet, betekent het vrijwel altijd minificatie, niet gzip.