CSS-Minifizierer
Minifizieren Sie CSS mit csso — einem Minifizierer, der Ihr Stylesheet in einen echten Syntaxbaum analysiert statt Zeichen zu entfernen, sodass er doppelte Regeln sicher zusammenführen und Werte verkürzen kann. Läuft vollständig in Ihrem Browser.
- Dateien verlassen niemals Ihr Gerät
- Kostenlos, keine Anmeldung
- Keine Wasserzeichen
- Funktioniert nach dem Laden auch offline
So verwenden Sie CSS-Minifizierer
- 1
CSS einfügen
Fügen Sie ein Stylesheet, ein Snippet oder einen einzelnen Regelblock ein.
- 2
Umstrukturierung für die kleinste Ausgabe aktiviert lassen
Sie führt doppelte und überlappende Regeln zusammen. Schalten Sie sie aus, falls das Ergebnis Sie je überrascht.
- 3
Ergebnis kopieren
Kopieren Sie das minifizierte CSS samt der eingesparten Größe.
Was CSS-Minifizierung tatsächlich entfernt und ändert
Leerzeichen und Kommentare zu entfernen ist der offensichtliche, einfache Teil der Minifizierung — jeder Minifizierer macht das, und für sich genommen ist es kaum mehr als ein Suchen-und-Ersetzen-Durchlauf. Der Teil, der einen echten CSS-bewussten Minifizierer von naivem Leerzeichen-Entfernen unterscheidet, ist alles, was tatsächliches Verständnis des Stylesheets erfordert: Kurzform-Wertkompression, bei der eine Farbe wie `#ffffff` zu `#fff` wird und redundante Null-Einheiten gekürzt werden, und das Zusammenführen doppelter oder überlappender Regeln, bei dem zwei Regeln, die letztlich dieselben Deklarationen anwenden, zu einer kombiniert werden. Beides erfordert, das CSS zunächst in eine echte Struktur zu analysieren — zu wissen, welcher Selektor zu welchen Deklarationen gehört und welche Werte gleichwertig sind —, weshalb csso einen echten Syntaxbaum aufbaut statt Text nach Mustern zu durchsuchen, aus demselben Grund, aus dem sich ein echter Parser gegenüber einem Regex-Durchlauf auszahlt.
Warum ein Ad-hoc-Minify für eine einzelne Datei immer noch vorkommt
Moderne Build-Tools minifizieren ihre CSS-Ausgabe automatisch als Teil eines Produktions-Builds, daher passiert Minifizierung für jeden, der in einem gebündelten Projekt arbeitet, bereits unsichtbar bei jedem Build. Ein eigenständiges Tool wie dieses deckt ab, was außerhalb dieser Pipeline liegt: ein CMS oder eine Plattform ganz ohne Build-Schritt, ein schnelles einmaliges Snippet, das irgendwo größenbeschränkt hineinpassen muss, oder einfach zu prüfen, wie stark ein gegebenes Stylesheet tatsächlich schrumpfen würde, bevor man entscheidet, ob sich das Aufsetzen von Tooling lohnt. Für eine einzelne, einmal benötigte Datei ist es der schnellere Weg zum selben Ergebnis, das ein Bundler erzeugen würde, sie hier einzufügen und das Ergebnis zurückzukopieren.
Was unangetastet bleibt
Ein CSS-bewusster Minifizierer ist bewusst zurückhaltend bei dem, was er zusammenführt oder umschreibt: Benutzerdefinierte Eigenschaften (CSS-Variablen), Media Queries, Keyframe-Animationen und herstellerspezifische Präfix-Deklarationen bleiben alle exakt so erhalten, wie sie geschrieben wurden, weil ein falsches Zusammenfassen still ändern könnte, wie eine Seite auf manchen Browsern oder Bildschirmgrößen gerendert wird, statt nur, wie der Quellcode aussieht. Die Optimierungen, die sicher automatisch vorgenommen werden können — Leerzeichen, Kommentare, Kurzform-Werte, wirklich doppelte Regeln — sind diejenigen ohne jede mögliche Auswirkung auf die gerenderte Seite, was das gesamte Designprinzip hinter der Verwendung eines echten Parsers statt eines stumpferen, riskanteren Suchen-und-Ersetzen-Ansatzes ist.
Häufig gestellte Fragen
Wird mein Stylesheet an einen Server gesendet?
Nein. csso wird in Ihren Browser geladen und läuft dort — die Minifizierung geschieht vollständig auf Ihrem Gerät. Ihr CSS reist zu keinem Zeitpunkt über das Netzwerk.
Kann Minifizieren meine Styles zerstören?
Bei korrekter Ausführung im Allgemeinen nicht — csso analysiert Ihr CSS in einen echten Syntaxbaum statt nur Zeichen zu entfernen, weshalb es sicher Dinge wie doppelte Selektoren zusammenführen oder Werte verkürzen kann, ohne zu ändern, welche Deklaration in der Kaskade gewinnt. Der einzige Punkt, an dem es Sie gelegentlich überraschen kann, ist die strukturelle Umstrukturierung: Regeln über ein Stylesheet hinweg zusammenzuführen ist eine aggressivere Optimierung als reines Entfernen von Leerzeichen, und in seltenen Grenzfällen mit spezifitätsempfindlichem CSS kann sie eine anders als erwartet aussehende Ausgabe erzeugen. Genau deshalb gibt es die Option „Regeln zusammenführen und umstrukturieren" — schalten Sie sie aus, und Sie erhalten nur entfernte Kommentare und Leerzeichen, ohne jede strukturelle Änderung.
Ist minifiziertes CSS noch gültiges, nutzbares CSS?
Ja. Die Ausgabe ist gewöhnliches CSS — nur für einen Menschen unlesbar, was für die Produktion genau der Sinn ist. Ein Browser analysiert es genau wie das formatierte Original; Sie können es direkt in ein `<link>`-Tag oder eine Build-Ausgabe einfügen.
Wann sollte ich das tatsächlich nutzen?
Für ein Produktions-Stylesheet, in einem größenbeschränkten Bereich eingebettetes CSS (ein Inline-`<style>`-Block, eine E-Mail-Vorlage, eine Plattform mit Zeichenlimit), oder eine einmalige Datei, die Sie schnell verkleinern müssen, ohne einen Build-Schritt aufzusetzen. Sie würden Ihre Quell- oder Entwicklungs-Stylesheets nicht minifizieren — halten Sie diese lesbar, und minifizieren Sie nur die endgültige Build-Ausgabe, genauso wie es ein Bundler tun würde.
Warum sieht die Ausgabe unlesbar aus?
Das ist der Sinn der Sache. Leerzeichen und Kommentare existieren für Menschen, die den Quellcode lesen, nicht für den Browser, der ihn rendert. Sie zu entfernen, und sicher zusammenzuführen, was zusammengeführt werden kann, reduziert die Anzahl der über das Netzwerk gesendeten Bytes, ohne zu ändern, wie die Seite aussieht.
Das könnte Sie auch interessieren
CSS-Formatierer
Stylesheets verschönern oder minifizieren
JS-Minifizierer
JavaScript mit echter Minifizierung verkleinern, nicht mit Regex
HTML-Formatierer
HTML korrekt verschönern und einrücken
Base64-Encoder und -Decoder
Base64 und Base64URL kodieren und dekodieren
Hash-Generator
MD5, SHA-1, SHA-256, SHA-384 und SHA-512
JavaScript-Formatierer
JS und TypeScript mit einem echten Parser formatieren
JSON-Formatierer
JSON sofort formatieren, validieren und minifizieren
JWT-Decoder
JSON Web Tokens dekodieren und untersuchen