Minifikator HTML

Wklej fragment kodu, treść e-maila lub całą stronę, do 1 000 000 znaków.

Dalej: wybierz opcje

Wklej kod HTML lub otwórz plik HTML, wybierz, ile usunąć, i skopiuj albo pobierz mniejszą wersję, która pokazuje, ile bajtów udało się zaoszczędzić. Poziom Bezpieczny nigdy nie skleja dwóch słów, więc strona wygląda i działa tak samo, a wbudowany CSS i JavaScript również są minifikowane.

Jak używać minifikatora HTML

  1. 1

    Dodaj kod HTML

    Wklej znaczniki do edytora albo otwórz plik .html, .htm lub .xhtml zapisany w UTF-8, mający do 1 000 000 znaków.

  2. 2

    Wybierz poziom i opcje

    Zostaw Bezpieczny dla dowolnego kodu HTML albo wybierz Maksymalny dla kompletnej strony, którą przetestujesz. Następnie zdecyduj, czy usunąć komentarze i zminifikować wbudowany CSS oraz JavaScript.

  3. 3

    Skopiuj lub pobierz wynik

    Sprawdź zminifikowany kod HTML i rozmiary, a potem skopiuj go lub pobierz jako plik. Jeśli zmienisz opcje na stronie wyniku, minifikacja uruchomi się ponownie.

Co zmienia minifikator

Narzędzie korzysta z html-minifier-terser, popularnego minifikatora HTML o otwartym kodzie źródłowym, a także z clean-css dla CSS i z Tersera dla JavaScriptu. Oba poziomy zachowują spację między słowami i między znacznikami liniowymi, takimi jak <b> i <a>. Poziom Maksymalny oszczędza więcej na kompletnych stronach.

Zmiana Bezpieczny Maksymalny
Podziały wierszy i ciągi spacji Zamieniają się w jedną spację Zamieniają się w jedną spację i znikają między blokami, takimi jak <div> i <li>
Spacja między słowami i znacznikami liniowymi Zostaje Zostaje
Opcjonalne znaczniki, takie jak </p>, </li>, <head> i <body> Zostają Są usuwane
Cudzysłowy wokół wartości atrybutów Zostają Są usuwane tam, gdzie pozwala na to HTML
Atrybuty logiczne, takie jak checked="checked" Zostają Są skracane do checked
Puste atrybuty class, id i style Zostają Są usuwane
Ukośnik zamykający w <br/> Zostaje Jest usuwany
type="text/javascript" i type="text/css" Są usuwane Są usuwane

XHTML: gdy otwierasz plik .xhtml albo gdy HTML zaczyna się od deklaracji XML, takiej jak <?xml version="1.0"?>, oba poziomy zachowują opcjonalne znaczniki, cudzysłowy wokół wartości atrybutów, atrybuty logiczne, takie jak checked="checked", i ukośniki zamykające, a JavaScript nie jest minifikowany. Dzięki temu wynik nadal da się odczytać jako XML.

Opcje

  • Usuń komentarze (domyślnie włączona): zwykłe komentarze są usuwane. Zostają komentarze zaczynające się od <!--! (np. informacje o licencji), komentarze dołączania po stronie serwera (SSI) i komentarze warunkowe Internet Explorera.
  • Minifikuj CSS (domyślnie włączona): CSS w elementach <style> i atrybutach style staje się krótszy. Reguła @import zostaje bez zmian i nic nie jest pobierane.
  • Minifikuj JavaScript (domyślnie włączona): skrypty wbudowane i atrybuty zdarzeń, takie jak onclick, stają się krótsze. Nazwy zmiennych lokalnych są skracane, nazwy globalne zostają, a komentarze licencyjne /*! ... */ są zachowywane. Zawartość danych strukturalnych, takich jak JSON-LD, nie jest minifikowana.

Czego narzędzie nigdy nie zmienia

  • Tekstu wewnątrz <pre> i <textarea>, gdzie spacje i podziały wierszy są widoczne na stronie.
  • Odwołań do znaków, takich jak &nbsp;, &amp; i &eacute;.
  • Bloków PHP (<?php ... ?>) i w stylu ASP (<% ... %>) oraz wszystkiego, co znajduje się między dwoma komentarzami <!-- htmlmin:ignore -->.
  • Deklaracji doctype, kotwic <a name>, atrybutu type="text" w polach formularza oraz wielkości liter i ukośników zamykających w SVG.

Komunikaty, które możesz zobaczyć

  • Nie udało się odczytać skryptu: skrypt wbudowany lub atrybut zdarzenia, który sam w sobie nie jest poprawnym JavaScriptem, zostaje bez minifikacji, a narzędzie pokazuje wiersz i kolumnę błędu. Reszta strony i tak jest minifikowana.
  • Nie udało się odczytać bloku CSS: ten CSS zostaje bez minifikacji.
  • Zestaw znaków inny niż UTF-8: pobrany plik jest zawsze zapisywany w UTF-8, więc zmień <meta charset> strony na UTF-8 albo skopiuj wynik do własnego pliku.
  • Brak oszczędności: kod HTML jest już tak mały, jak pozwalają na to te opcje.

Jeśli element <script> lub <style> nie jest nigdzie zamknięty, nic nie zostaje zminifikowane, a narzędzie pokazuje wiersz i kolumnę, w których ten element się zaczyna. Niezależnie od poziomu otwórz zminifikowaną stronę i przeklikaj ją przed publikacją.

Najczęściej zadawane pytania

Przy poziomie Bezpieczny tak. Białe znaki są zamieniane na jedną spację, ale nigdy nie są usuwane, więc <b>Witaj</b> <i>świecie</i> nadal czyta się jako „Witaj świecie”, a elementy ustawione obok siebie zachowują odstęp. Zmienić się może tylko tekst, który CSS wyświetla z zachowaniem spacji, np. przy white-space: pre.

Przy kompletnych stronach, które testujesz przed publikacją. Ten poziom oszczędza więcej bajtów, bo usuwa białe znaki między blokami i opcjonalne znaczniki, takie jak </p>. Sprawdź dwie rzeczy: elementy ustawione obok siebie za pomocą display: inline-block mogą stracić odstęp, a fragment, z którego usunięto ostatni </p>, może wchłonąć kod HTML dodany po nim.

Gdy opcja Usuń komentarze jest włączona, zwykłe komentarze znikają. Zostają komentarze zaczynające się od <!--!, komentarze dołączania po stronie serwera, takie jak <!--#include virtual="/footer.html" -->, oraz komentarze warunkowe Internet Explorera, takie jak <!--[if IE]>. Aby zachować fragment dokładnie w takiej postaci, w jakiej jest, umieść go między dwoma komentarzami <!-- htmlmin:ignore -->. Oba znaczniki zostaną usunięte.

JavaScript jest minifikowany tylko wtedy, gdy da się go odczytać jako poprawny kod. Jeśli skrypt wbudowany zawiera błąd składni albo kod szablonu, który sam w sobie nie jest JavaScriptem, ten skrypt zostaje bez minifikacji, reszta strony jest minifikowana, a narzędzie pokazuje wiersz i kolumnę błędu.

Nie. Kod HTML, który wklejasz lub otwierasz, zostaje w Twojej przeglądarce. Nie jest wysyłany na nasze serwery ani dodawany do linku strony. Między krokami jest przechowywany w tej karcie przeglądarki, dopóki jej nie zamkniesz lub nie wybierzesz opcji Zacznij od nowa. Strona pobiera kod minifikatora, gdy prosisz o wynik, i informuje nasz serwer, że wykonano minifikację, bez przesyłania kodu HTML.

Do 1 000 000 znaków, wklejonych lub otwartych z pliku zapisanego w UTF-8. Jeśli plik używa innego kodowania, narzędzie o tym poinformuje: otwórz go w edytorze, skopiuj kod HTML i wklej go tutaj. Minifikacja trwająca dłużej niż 30 sekund zostaje przerwana. W takim przypadku spróbuj z krótszym fragmentem kodu HTML.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach