Minificatore HTML, CSS e JS
Rimuova commenti e spazi superflui in modo sicuro; copi l'output o lo scarichi come file .min.
Strumento
Questo strumento minifica HTML, CSS, JavaScript e JSON: rimuove commenti, righe vuote, rientri e gli spazi attorno alla punteggiatura, senza toccare altro. Stringhe, interno di url(), template literal, espressioni regolari, contenuto di pre, textarea, script e style, commenti condizionali e commenti di licenza che iniziano con /*! restano così come sono; in HTML nessun tag e nessuna virgoletta di attributo viene eliminata. Incolli il codice o carichi un file fino a 2 MB; tutto avviene nel suo browser e il codice non viene mai inviato a un server.
Il risultato mostra la dimensione della sorgente e dell'output in byte, la percentuale risparmiata e, se il suo browser lo consente, la dimensione gzip reale di entrambi i testi. Presti attenzione a quest'ultimo riquadro: i server inviano già i file compressi con gzip o brotli, e spazi ripetuti e rientri occupano pochissimo spazio una volta compressi, quindi la minificazione da sola porta un guadagno di velocità limitato e acquista senso solo insieme alla compressione. Per la velocità di una pagina contano di più compressione e intestazioni di cache, dimensione delle immagini e script non necessari.
Lo strumento non accorcia i nomi delle variabili, non trasforma il codice, non riscrive i valori CSS (0.5 resta 0.5, 0px resta 0px) e non elimina le regole vuote; questo limite è voluto, perché l'output si comporti esattamente come la sorgente. In JavaScript le interruzioni di riga sono conservate, quindi l'inserimento automatico del punto e virgola non cambia; la distinzione tra divisione ed espressione regolare, però, si basa sul token precedente e JSX non è supportato. Strumenti di build come Vite, Next.js e webpack fanno già questo lavoro; questo strumento è pensato per piccoli siti senza fase di build, file singoli e verifiche rapide. Conservi sempre il file sorgente e non modifichi mai a mano il file minificato.
Domande frequenti
Perché l'output si è ridotto meno del previsto?
Lo strumento rimuove solo commenti e spazi; non accorcia i nomi e non trasforma il codice. I file già compatti o con pochi commenti cambiano poco. Se il server usa gzip o brotli la differenza si riduce ancora, e il riquadro gzip lo mostra direttamente.
L'output JavaScript è sicuro?
Le interruzioni di riga sono conservate, quindi l'inserimento automatico del punto e virgola si comporta allo stesso modo; stringhe, template literal ed espressioni regolari restano intatti. La distinzione tra divisione ed espressione regolare si basa sul token precedente e può sbagliare in casi molto rari; apra la pagina e controlli la console prima di pubblicare. Per la build di produzione usi esbuild, terser o lo strumento di build del suo progetto.
Il mio codice viene inviato da qualche parte?
No. Il codice incollato o caricato viene elaborato solo nel suo browser; anche la stima gzip è calcolata con l'interfaccia di compressione del browser stesso. Aggiornando la pagina tutto viene cancellato.
Posso modificare il file minificato in seguito?
Modifichi sempre il file sorgente e minifichi di nuovo; le modifiche a mano in un file ridotto a una sola riga causano errori e si perdono alla successiva esecuzione. Tenga la sorgente sotto controllo di versione e consideri il file minificato come output di build.
