Wie Sie HTML-Code formatieren und minimieren
<div class="card"><h2>Titel</h2><p>Etwas Text hier</p><a href="/link">Mehr lesen</a></div>
</pre>
<p>Nachher:</p>
<pre><div class="card">
<h2>Titel</h2>
<p>Etwas Text hier</p>
<a href="/link">Mehr lesen</a>
</div>
</pre>
So formatieren Sie HTML
- Fügen Sie Ihr HTML ein: geben Sie unordentlichen oder minifizierten Code in den Formatierer ein.</li>
- Stellen Sie Ihre Präferenzen ein: wählen Sie Einrückungsgröße (2 oder 4 Leerzeichen) und ob Inline-Tags erhalten bleiben sollen.</li>
- Kopieren Sie das Ergebnis: das formatierte HTML ist bereit für Ihren Editor.</li>
So minifizieren Sie HTML
- Fügen Sie Ihr formatiertes HTML ein: geben Sie Code mit Einrückung, Kommentaren und Leerräumen ein.</li>
- Konfigurieren Sie Optionen: wählen Sie, ob Kommentare entfernt, Leerräume zusammengeklappt und Attribute optimiert werden sollen.</li>
- Kopieren Sie die minifizierte Ausgabe: verwenden Sie sie in Ihrem Produktions-Build.</li>
| Situation | Verwenden |
|---|---|
| Code schreiben und bearbeiten</td> | Formatieren</td> |
| Code-Überprüfung und Debugging</td> | Formatieren</td> |
| In Produktion bereitstellen</td> | Minifizieren</td> |
| Code-Snippets teilen</td> | Formatieren</td> |
| E-Mail-Vorlagen</td> | Minifizieren (kleinere Nutzlast)</td> |
| HTML in JSON oder YAML einbetten</td> | Minifizieren (vermeidet Escape-Probleme)</td> |
| In Stack Overflow oder Docs einfügen</td> | Formatieren</td> |
- Leerräume zusammenklappen: entfernt alle führenden und nachgestellten Leerräume in Zeilen und reduziert Läufe von Leerräumen auf einzelne Leerzeichen (oder null, zwischen Tags).</li>
- HTML-Kommentare entfernen:
<!-- Kommentar -->-Blöcke werden entfernt (es sei denn, der Kommentar ist ein bedingter Kommentar wie<!--[if IE]>, den ältere Browser tatsächlich verwenden).</li> - Optionale Tags entfernen: HTML5 erlaubt das Weglassen von
</li>,</p>,</td>und einigen anderen in bestimmten Kontexten. Aggressive Minifizierer entfernen diese.</li> - Redundante Attributwerte entfernen:
<input type="text">wird zu<input>(text ist der Standard).<form method="get">wird zu<form>.</li> - Kürzere boolesche Attribute verwenden:
disabled="disabled"wird zudisabled.</li> - Inline-CSS und -JS optimieren: einige Minifizierer führen CSS durch cssnano und JavaScript durch Terser als letzten Schritt.</li>
- Leerräume in
<pre>und<textarea>sind wichtig: das Zusammenklappen von Leerräumen innerhalb von<pre>-Blöcken (die Code oder Text genau wie geschrieben anzeigen) bricht die sichtbare Formatierung. Die meisten Minifizierer bewahren Leerräume innerhalb von<pre>-,<textarea>- und<script>-Tags standardmäßig, aber überprüfen Sie, ob Ihr Minifizierer eine benutzerdefinierte Konfiguration hat.</li> - Kommentare, die Logik beeinflussen: einige Build-Pipelines verwenden HTML-Kommentare als Markierungen (z.B.
<!-- inject:scripts -->für Asset-Pipelines). Diese zu entfernen bricht den Build. Konfigurieren Sie den Minifizierer, um Markierungskommentare zu bewahren.</li> - Template-Syntax innerhalb von HTML: Handlebars
{{var}}, Nunjucks{% block %}, Jinja{{ }}und ähnliche Template-Syntax kann einen Minifizierer verwirren, der sie nicht kennt. Verwenden Sie einen Minifizierer, der Ihre Template-Engine erkennt, oder minifizieren Sie, nachdem das Template zu reinem HTML gerendert wurde.</li> - Inline-Event-Handler und JavaScript: aggressive Minifizierer können Inline
onclick="alert('hi')"brechen, wenn sie versuchen, das JavaScript darin zu minifizieren. Standardeinstellungen überspringen diese normalerweise; überprüfen Sie in Ihrer Ausgabe.</li> - Kodierungs-Randfälle: Minifizierer, die Leerräume zu aggressiv entfernen, können nicht-lateinische Schriften brechen, bei denen Wortgrenzen von subtilen Abstandsregeln abhängen. Testen Sie mit Inhalten in Ihren tatsächlichen Sprachen.</li>
- Sie eine minifizierte HTML-Datei erben und die Struktur verstehen müssen</li>
- Sie aus einem Editor einfügen, der Formatierung entfernt (einige CMSes tun dies)</li>
- Sie Pair-Programming oder Code-Überprüfung machen</li>
- Sie debuggen und sehen müssen, wo ein Tag öffnet oder schließt</li>
- Ihre Build-Pipeline noch nicht minifiziert (die meisten modernen tun es)</li>
- Sie HTML in eine JSON-API-Antwort oder E-Mail-Vorlage einbetten</li>
- Sie HTML in ein binäres Asset bündeln (ein Single-File-PDF, ein Desktop-App-Installer)</li>
- Sie eine statische Site für das kleinstmögliche Seitengewicht optimieren</li>
- Automatisieren Sie in Ihrem Build-Prozess: die meisten Build-Werkzeuge (Webpack, Vite, Gulp, Eleventy, Astro) können HTML während der Bereitstellung automatisch minifizieren. Schreiben Sie formatierten Code, versenden Sie minifizierten Code.</li>
- Formatieren Sie vor dem Committen: sauberes, konsistent formatiertes HTML macht Git-Diffs einfacher zu lesen und Code-Überprüfungen schneller. Paaren Sie mit Prettier oder Beautify in Ihrem Editor für Formatierung beim Speichern.</li>
- Minifizierung wird Ihr HTML nicht brechen: es entfernt nur Inhalte, die keine Auswirkung auf das Rendering haben. Kommentare, zusätzliche Leerräume und optionale Tags können sicher entfernt werden. Die Ausnahme ist
<pre>/<textarea>-Inhalt, den die meisten Minifizierer korrekt bewahren.</li> - Verwenden Sie Syntax-Hervorhebung: sowohl der Formatierer als auch der Minifizierer bieten farbcodierte Syntax-Hervorhebung, was es einfacher macht zu überprüfen, ob die Ausgabe korrekt ist.</li>
- Testen Sie die gerenderte Ausgabe: nach dem Minifizieren laden Sie die Seite in einem Browser und bestätigen Sie, dass sie richtig aussieht. Minifizierungsfehler erscheinen typischerweise als fehlender Inhalt oder kaputtes Layout.</li>
Häufig gestellte Fragen
Verändert Formatieren oder Minimieren die Darstellung der Seite?
Nein. Browser ignorieren zusätzliche Leerräume in HTML. Formatiertes und minimiertes HTML erzeugen das gleiche visuelle Ergebnis. Formatieren ist für Entwicklerinnen und Entwickler, Minimieren für die Performance.
Wie viel Dateigröße spart die Minimierung?
Typischerweise 10-30 %, je nachdem, wie viele Leerräume und Kommentare Ihr ursprüngliches HTML enthält. Bei einer 100-KB-HTML-Datei können das 10-30 KB sein, was über Tausende von Seitenaufrufen hinweg ins Gewicht fällt.
Was ist mit Inline-CSS und JavaScript?
HTML-Formatter und -Minifier kümmern sich um die HTML-Struktur. Für die besten Ergebnisse minimieren Sie Ihr CSS und JavaScript separat mit dedizierten Tools.
Wird mein Code an einen Server gesendet?
Nein. Sowohl Formatierung als auch Minimierung erfolgen vollständig in Ihrem Browser. Ihr Code verlässt Ihr Gerät nie.