100 % lokal — Ihre Daten verlassen nie Ihren Browser

HTML-Minifier — leichtere Seite, gleiches Bild

Leerraum aus HTML entfernen. Attributwerte und die Abstände zwischen Inline-Elementen bleiben — die Seite wird kleiner und sieht genauso aus.

Sofort Privat Null Cookies

HTML-Eingabe

HTML-Ausgabe

Was dieses Werkzeug tut

Aus lesbarem HTML wird das kleinste HTML, das gleich dargestellt wird.

<div>
  <p>  Hallo  </p>
</div>
<div><p> Hallo </p></div>

Folgen von Leerraum werden zu einem Leerzeichen, der Leerraum zwischen Blockelementen fällt weg, und Kommentare fallen weg — außer den bedingten, die Anweisungen an einen alten Browser sind und keine Notizen an einen Leser.

Der Raum zwischen zwei Inline-Elementen ist Inhalt

<span>a</span> <span>b</span>
<span>a</span> <span>b</span>

Da gibt es nichts zu entfernen: dieses Leerzeichen wird dargestellt, und es zu streichen macht aus „a b“ ein „ab“. Es wurde gestrichen, was die Seite anders machte statt kleiner — ein echter Fehler, beim Schreiben dieser Seite gefunden und behoben. Um ein Blockelement herum stellt dasselbe Leerzeichen nichts dar, also fällt es weg:

<div>a</div>   <div>b</div>
<div>a</div><div>b</div>

Ein Attributwert ist kein Satz

<input value="a  b">
<input value="a  b">

Die zwei Leerzeichen bleiben. Sie wurden zu einem zusammengezogen, weil der Durchgang über den Leerraum mitten durch die Attribute lief — und der Wert, den ein Formular absendet, der Text eines title, der Inhalt eines alt sind Daten, keine Einrückung. Werte in Anführungszeichen werden vor dem Zusammenziehen beiseitegelegt und unberührt zurückgesetzt.

Wo er nie hineingeht

  • <pre> und <textarea>. Angezeigt oder abgesendet genau so, wie sie geschrieben stehen.
  • <script> und <style>. Ihr Inhalt ist JavaScript und CSS; deren Minifizierer sind eigene Werkzeuge auf dieser Seite, und sie zu starten ist Ihre Entscheidung, keine Nebenwirkung von dieser hier.
  • Bedingte Kommentare. <!--[if IE]>…<![endif]--> wird von einem Browser gelesen, also bleibt es.

Eine Grenze, die man kennen sollte: ein geschützter Bereich endet an seinem schließenden Tag, gefunden per Muster. Ein wörtliches </script> in einer JavaScript-Zeichenkette beendet ihn daher zu früh. Diesen Fall richtig zu behandeln verlangt einen vollen HTML-Parser, und der ist ein anderes Werkzeug als ein Leerraum-Minifizierer.

Datenschutz ab Werk

Alles läuft lokal in deinem Browser mit JavaScript. Deine Daten werden nie hochgeladen, wodurch das Tool auch für sensible Inhalte sicher ist und offline funktioniert.

Häufige Fragen

Verändert das das Aussehen meiner Seite?
Nein, und das war eine Korrektur wert. Der Leerraum zwischen zwei Inline-Elementen wird dargestellt: `<span>a</span> <span>b</span>` liest sich „a b“, und dieses Leerzeichen zu entfernen ergab „ab“. Es bleibt jetzt, wenn beide Seiten inline sind, und fällt um Blockelemente herum weg, wo es nichts darstellt. Kleiner, nicht anders.
Werden meine Attributwerte angefasst?
Nicht mehr. Das Zusammenziehen des Leerraums lief mitten durch sie hindurch: `<input value="a b">` kam mit einem Leerzeichen zurück — und der Wert, den ein Formular absendet, ist keine Frage des Satzes. `title`, `alt`, `data-*` und die übrigen hatten dasselbe Problem. Werte in Anführungszeichen werden nun vor dem Zusammenziehen beiseitegelegt und genau so zurückgesetzt.
Was bleibt vollständig unangetastet?
`<pre>` und `<textarea>`, deren Leerraum angezeigt oder abgesendet wird, wie er dasteht; `<script>` und `<style>`, deren Inhalt kein HTML ist; und bedingte Kommentare (`<!--[if IE]>`), die Anweisungen sind und keine Notizen. Gewöhnliche Kommentare werden entfernt. Eine bekannte Grenze: ein wörtliches `</script>` in einer JavaScript-Zeichenkette beendet den geschützten Bereich zu früh — das richtig zu erkennen braucht einen vollen HTML-Parser.
` in einer JavaScript-Zeichenkette beendet den geschützten Bereich zu früh — das richtig zu erkennen braucht einen vollen HTML-Parser."}}]}

Ähnliche Konverter