Cookie Questo sito conserva solo ciò che serve per funzionare. Al momento non ci sono né statistiche né pubblicità, e nulla di quanto trovi qui ti segue su altri siti. Leggi l’informativa sulla privacy

Scegli cosa consentire
+92 312 8299940Preventivo gratuito
Strumento gratuito, nessun account

Preprocessore CSS
Da SCSS, Less e Stylus a CSS

Questo preprocessore CSS legge regole annidate, variabili e mixin, poi scrive il CSS piatto che il browser capisce. Quindi compili SCSS in CSS, o Less in CSS, oppure porti il CSS puro nell'altro senso. Il lavoro gira nel tuo browser, e non carichiamo nulla.

  • GratisPrezzo
  • Entrambi i sensiDirezioni
  • NessunaRegistrazione
  • NessunaCaricamenti

Preprocessore CSS

Converti SCSS, Less o Stylus in CSS puro, oppure riporta un foglio piatto all'annidamento

Pronto. Incolla un foglio di stile, oppure premi uno dei pulsanti di esempio.

Qui il browser fa tutto il lavoro, in questa scheda. Non carichiamo nulla, non salviamo nulla e non registriamo nulla.
La versione breve

Cosa fa un preprocessore CSS

Un foglio di stile con annidamento non è CSS valido. Il browser scarta l'intera regola e non dice nulla. Perciò questo preprocessore CSS appiattisce l'annidamento, sostituisce le variabili con i loro valori e scrive il CSS piatto che un browser può leggere.

Da un solo incolla tornano tre cose. Prima il CSS compilato stesso, pronto da incollare in un file. Poi una lista delle variabili e dei mixin trovati, con il valore che ognuno porta. Infine un pannello di note che nomina tutto ciò che il compilatore ha dovuto decidere da solo.

Quest'ultimo pannello conta più di quanto sembri. Un'ipotesi silenziosa dentro il CSS compilato è un layout rotto due schermate più avanti. Quindi ogni ipotesi viene stampata accanto all'output invece che sepolta dentro.

Il convertitore lavora anche al contrario. Poiché un file piatto è difficile da tenere in ordine, può raggruppare CSS normale di nuovo in SCSS o Less annidato, con i valori condivisi tirati fuori come variabili. Non installi nulla e non invii nulla.

Come un preprocessore compila in CSS

Il lavoro si svolge in tre passaggi. Prima il lettore trasforma il sorgente in una lista di regole, ognuna con un selettore, un blocco e una profondità. Poi un secondo passaggio unisce i selettori annidati ai loro genitori. Infine uno scrittore stampa le regole piatte in ordine.

Schema dei tre passaggi che fa un convertitore di preprocessore CSS: SCSS annidato con un mixin a sinistra, il CSS appiattito con il mixin inserito al centro e il pannello delle note a destra
L'annidamento entra, le regole piatte escono.

Unire i selettori segue le regole dei selettori che il browser stesso usa. Una regola annidata una volta diventa un selettore discendente. Una regola scritta con una e commerciale tiene il genitore attaccato, ed è così che si costruiscono uno stato hover e una classe modificatrice.

Il convertitore di preprocessore CSS con un esempio SCSS nel riquadro sinistro e il CSS piatto compilato in quello destro, dove il mixin è già stato inserito e la regola annidata è diventata un selettore discendente
Annidamento e un mixin a sinistra, CSS piatto a destra.

Le variabili sono il secondo lavoro. Poiché SCSS e Less permettono entrambi che un nome stia per un valore, il compilatore cerca ogni nome che incontra e scrive il valore al suo posto. Le variabili Sass iniziano con un segno del dollaro, e quelle Less con una chiocciola, quindi il lettore le distingue dal primo carattere.

Lo scrittore non tocca mai un'API del browser e mai la rete. Quindi la pagina funziona offline. Funziona anche su un file che preferisci non incollare in un compilatore ospitato, come un foglio di stile che nomina un prodotto non annunciato.

SCSS, Less e Stylus fianco a fianco

I tre linguaggi concordano sull'idea e differiscono sulla punteggiatura. Quindi il compilatore legge tutti e tre e scrive un solo output.

Lo SCSS mantiene le graffe e i punti e virgola del CSS, ed è per questo che sembra CSS con funzioni in più. Il Less fa lo stesso, e permette anche una chiamata parziale a un mixin senza parentesi. Lo Stylus lascia cadere le graffe, i punti e virgola e spesso i due punti, e si affida all'indentazione invece.

Poiché le differenze sono piccole, una sola pagina può leggere tutti e tre. Il lettore decide quale linguaggio ha davanti guardando il file: un segno del dollaro punta allo SCSS, una chiocciola davanti a un nome punta al Less, e una graffa assente punta allo Stylus. Quando il sorgente è ambiguo, la pagina lo dice nel pannello delle note invece di indovinare.

L'output è lo stesso in ogni caso. Quindi il browser vede un solo foglio di stile piatto, e tu tieni il sorgente nel linguaggio che il tuo team già usa.

Perché unire i selettori è la parte difficile

Un compilatore che incolla i due selettori con uno spazio sbaglia quasi tutto l'annidamento. Poiché una regola annidata sotto un genitore diventa discendente solo quando non c'è la e commerciale, il lettore tiene traccia del genitore a ogni livello mentre scende.

Quindi ogni blocco conserva il selettore completo che stamperà. Una regola in cima parte con il proprio selettore. Poi una regola dentro di essa eredita quello e aggiunge il suo, separati da uno spazio. Una e commerciale sostituisce lo spazio del tutto, ed è così che lo stato hover di un genitore si attacca senza buco.

L'ordine delle regole stampate è il terzo caso. Poiché una regola più tarda di uguale peso vince, lo scrittore conserva l'ordine del sorgente a ogni livello. In questo modo la cascata sopravvive alla compilazione, e una regola che volevi vincente vince ancora.

Cosa compila pulito e cosa riceve una nota

Un compilatore si guadagna la fiducia nominando i propri limiti. Perciò il pannello delle note elenca ogni costruzione che il lettore ha gestito in un modo che dovresti controllare.

Il pannello delle note del convertitore di preprocessore CSS che elenca una variabile non risolta, un import non letto e un mixin con guardia che è stato inserito
Ogni decisione del compilatore è elencata.

Le definizioni e le inclusioni dei mixin compilano, perché entrambi i linguaggi le definiscono nel sorgente che hai incollato. Le espressioni di guardia del Less compilano quando la condizione è un confronto semplice. Quindi un mixin con guardia inserisce il ramo che corrisponde.

Il pannello dei dati del convertitore di preprocessore CSS che riporta il sorgente letto come Less, due regole scritte da tre dichiarazioni, la dimensione prima e dopo la compilazione e le variabili e i mixin trovati per nome
Cosa ha trovato il lettore, contato invece che ipotizzato.

L'interpolazione riceve una nota più spesso. Poiché un valore costruito da una variabile dentro una stringa ha bisogno del valore al momento della compilazione, il lettore può risolverlo solo quando la variabile è nello stesso file. Un valore che viene da un import che la pagina non ha resta come scritto, e la nota dice quale nome mancava.

Anche gli import stessi ricevono una nota. La pagina non può recuperare un altro file, dato che non tocca mai la rete. Quindi un at-import resta nell'output come un normale import CSS, e il pannello dice che il file non è stato letto. Questo tiene l'output onesto invece che silenziosamente sbagliato.

Il conteggio accanto all'output fa parte della stessa idea. Poiché una compilazione può cambiare la dimensione di un file in entrambi i sensi, il pannello riporta le regole scritte, le dichiarazioni che contengono e la dimensione dell'input e dell'output. Quindi un foglio di stile che è cresciuto dopo la compilazione si vede a colpo d'occhio e non dopo un deploy.

Passo per passo

Come usare il convertitore di preprocessore CSS

Quattro passi, e nessuno ha bisogno di un account.

  • 1

    Incolla il tuo foglio di stile

    Quindi copia il file intero e incollalo nel riquadro sinistro. Anche un file parziale funziona, quindi un solo componente con il suo annidamento basta per provare.

  • 2

    Scegli la direzione

    Poi scegli il linguaggio di partenza. Per SCSS in CSS, prendi SCSS come input e CSS come output. Poiché la pagina legge tutti e tre, anche un file misto compila.

  • 3

    Leggi il pannello delle note

    Poi controlla le note prima di incollare l'output da qualche parte. Un nome che il compilatore non ha potuto risolvere si corregge più facilmente qui che in un browser che mostra un riquadro vuoto.

  • 4

    Copia il CSS

    Infine prendi l'output. Il pulsante copia mette l'intero foglio di stile nei tuoi appunti. Dopo di che, salvalo accanto al file sorgente e collegalo come colleghi qualsiasi altro foglio di stile.

Perché farlo

Perché compilare nel browser

Cinque motivi per cui questo batte i modi abituali di arrivare a CSS puro.

  • Nessuna catena di build

    Quindi salti l'installazione. Un compilatore in un progetto significa un gestore di pacchetti, uno script e un file di configurazione. Per un solo foglio di stile sono molti pezzi mobili.

  • Il tuo sorgente non esce mai

    La compilazione gira nella scheda che hai già aperto. Perciò un foglio di stile sotto contratto resta sulla tua macchina. Nulla viene caricato e nulla viene registrato.

  • Entrambi i sensi

    La maggior parte dei compilatori va solo in un senso. Poiché questa pagina raggruppa anche il CSS piatto in annidamento, aiuta quando erediti un foglio di stile senza file sorgente e vuoi rimetterlo in ordine.

  • Vedi le ipotesi

    Poi c'è il pannello delle note. Uno strumento di build fallisce con un numero di riga e nulla più. Qui ogni ipotesi è nominata con parole chiare accanto all'output.

  • Nulla da lasciare acceso

    Infine non c'è nessun processo di controllo. Nulla si ricostruisce quando salvi, e nulla si rompe quando torni un mese dopo. Quindi il preprocessore CSS resta qui finché ti serve.

Regole pratiche

Ottenere una compilazione pulita con qualsiasi preprocessore CSS

Sei abitudini che tengono l'output vicino a quello che ti aspetti.

  • Tieni intero il sorgente Quindi incolla il file, non un frammento, quando una variabile è impostata in cima. Poiché il lettore cerca un nome dove è stato definito, un frammento a cui manca quella riga riceve una nota.
  • Fai corrispondere il linguaggio al file Poi controlla la direzione rispetto al file che hai copiato. Un file Less letto come SCSS compila comunque, ma le regole della e commerciale si comportano diversamente e l'output può sorprenderti.
  • Evita di mescolare i due Un file che contiene sia una variabile con il dollaro sia una con la chiocciola non è valido in nessuno dei due linguaggi. Quindi dividilo prima di incollarlo, e il pannello delle note resta zitto.
  • Attento alla e commerciale La e commerciale significa il selettore genitore. Perciò una regola che ne contiene una dentro una media query si attacca al genitore fuori dalla query, cosa che raramente vuoi. Tuttavia, ogni preprocessore CSS la tratta allo stesso modo, quindi la regola viaggia tra i file.
  • Dai un nome ai tuoi mixin Un mixin chiamato con un nome che il lettore trova si inserisce pulito. Quindi tieni i nomi dei mixin distinti dai nomi delle variabili, e la ricerca non avrà mai due candidati.
  • Minifica alla fine Compila prima e minifica dopo, in quest'ordine. Poiché un minificatore toglie i commenti, eseguirlo prima butta via le note che spiegano l'output.
Attenzione

Sette errori scivolosi con un preprocessore

Ognuno di questi sembra innocuo nel sorgente e fa male nel browser.

  • Annidamento profondo

    Cinque livelli di annidamento si leggono bene e compilano in un selettore che nessuno può sovrascrivere. Poiché ogni livello aggiunge peso al selettore, una regola più tarda con una sola classe perde. Quindi tieni l'annidamento a tre livelli.

  • Una variabile duplicata

    Un nome impostato due volte nello stesso ambito vince con l'ultimo valore. Poi la prima metà del file sembra ignorare il cambiamento. Il pannello delle note nomina il vincitore così lo vedi.

  • Unità su un valore zero

    Zero pixel e zero sono lo stesso numero in CSS. Poiché una variabile che contiene uno zero nudo è più facile da riusare, preferisci lo zero semplice e togli l'unità.

  • Output di un mixin che nessuno ha controllato

    Un mixin che aggiunge un prefisso di browser scrive ogni riga in ogni regola che lo chiama. Quindi una chiamata dentro un ciclo moltiplica l'output in fretta. Controlla la dimensione compilata, non la dimensione del sorgente.

  • Interpolazione in un selettore

    Costruire un nome di classe da una variabile funziona al momento della compilazione. Perciò il nome è incastrato nel CSS e non può cambiare a runtime. Un tema che ha bisogno di entrambi gli stati ha bisogno di due classi vere. Quindi un preprocessore CSS è il posto sbagliato per quel lavoro.

  • Importare un parziale due volte

    Due import dello stesso parziale scrivono le sue regole due volte. Poi la seconda copia sovrascrive la prima, e una correzione in un punto sembra non fare nulla.

  • Dimenticare il sorgente

    Il file compilato è quello che va in produzione, e non è quello che modifichi. Quindi tieni il sorgente nel repository accanto a lui, altrimenti la prossima modifica parte da un file piatto senza annidamento.

Domande

Domande sul preprocessore CSS

Questo preprocessore CSS è gratis?

Sì. Non c'è nessun account, nessun limite e nessun piano a pagamento. Quindi compili tutti i fogli di stile che vuoi.

Il mio foglio di stile viene inviato da qualche parte?

No. Poiché il lettore e lo scrittore girano entrambi nel tuo browser, il sorgente non lascia mai la tua macchina. Di conseguenza, un foglio di stile sotto contratto resta privato.

Può compilare SCSS in CSS?

Sì. Incolla lo SCSS, scegli SCSS come input e CSS come output. Poi l'annidamento si appiattisce, le variabili si risolvono e i mixin vengono inseriti.

Può compilare Less in CSS?

Sì. È la stessa pagina con Less scelto come input. Poiché i due linguaggi condividono l'idea dell'annidamento, cambia solo la punteggiatura delle variabili.

Legge lo Stylus?

Sì. Lo Stylus lascia cadere le graffe e i punti e virgola e si affida all'indentazione. Quindi il lettore segue l'indentazione quando non trova una graffa.

Può riportare il CSS a SCSS?

Sì. Poiché la stessa pagina lavora in entrambi i sensi, può raggruppare le regole piatte per i loro selettori condivisi in annidamento e tirare fuori i valori ripetuti come variabili.

Esegue i miei mixin?

Inserisce un mixin definito nel file che hai incollato. Un mixin che vive in un import che la pagina non può leggere resta come chiamata e riceve una nota. Quindi non si indovina nulla.

Cosa succede a un import?

Resta nell'output come un normale import CSS, e il pannello delle note dice che il file non è stato letto. Poiché la pagina non tocca mai la rete, non può recuperare l'altro file.

Capisce le variabili?

Sì. Una variabile Sass inizia con un segno del dollaro, e una variabile Less con una chiocciola. Quindi il lettore le distingue da quel primo carattere e scrive il valore al posto giusto.

Minifica l'output?

Può farlo. Scegliere minifica toglie i commenti e gli spazi superflui. Tuttavia, compila prima e minifica dopo, così le note sopravvivono abbastanza a lungo da essere lette.

L'output corrisponderà esattamente al mio strumento di build?

Corrisponde sulle funzioni comuni: annidamento, variabili, mixin, extends e guardie semplici. Una costruzione che il tuo strumento di build gestisce con un plugin qui potrebbe ricevere una nota invece.

Gestisce le media query dentro una regola?

Sì. Poiché le media query annidate vengono portate al livello superiore come le porta un preprocessore, l'output compilato conserva la stessa cascata.

Supporta la e commerciale?

Sì. Una regola scritta con essa tiene il genitore attaccato, ed è così che si costruisce uno stato hover o una classe modificatrice. Quindi il selettore compilato si legge come nel sorgente.

Posso incollare solo una parte di un file?

Sì, purché le variabili che usa siano nella parte che hai incollato. Un nome definito sopra il frammento copiato non si può risolvere, e la nota lo dice.

Scrive le source map?

No. Una source map punta al file originale attraverso un percorso che ha solo la tua build. Dato che questa pagina non ha nessun file a cui puntare, una mappa da qui sarebbe fuorviante.

Funziona offline?

Sì. Una volta caricata la pagina, non viene recuperato altro. Quindi il convertitore continua a funzionare su un portatile in una stanza senza segnale.

Conserva i miei commenti?

Conserva un commento di blocco per impostazione predefinita e può toglierlo quando scegli minifica. Quindi una nota di intestazione sopravvive, e una nota che contava solo mentre modificavi no.

Quanti livelli di annidamento può leggere?

Non c'è un tetto fisso, e il limite pratico lo metti tu. Un annidamento profondo compila bene e si legge male. Quindi tre livelli sono una buona abitudine.

Può gestire un file grande?

Sì. Poiché il lavoro è trattamento di testo semplice, un foglio di stile di qualche migliaio di righe si compila in molto meno di un secondo su un portatile normale.

Scrive proprietà personalizzate CSS?

Le legge e le scrive come dichiarazioni ordinarie. Quindi una proprietà personalizzata del sorgente sopravvive alla compilazione intatta, e una variabile di preprocessore può contenerne una.

E un mixin per i prefissi dei browser?

Viene inserito come qualsiasi altro mixin, il che scrive ogni riga con prefisso in ogni regola che lo chiama. Perciò controlla la dimensione compilata invece della dimensione del sorgente.

Verifica gli errori?

Segnala quello che non ha potuto risolvere invece di rifiutare tutto il file. Quindi ottieni un output utilizzabile più una lista, invece di un errore e nulla più.

Può confrontare i due sensi?

Sì. Compila un file in CSS e poi raggruppa di nuovo quel CSS, e una costruzione con perdita si tradisce da sola. Tutto ciò che non sopravvive al viaggio di andata e ritorno non stava facendo nulla.

Tocca i miei appunti da solo?

No. La pagina legge gli appunti solo quando incolli, e scrive solo quando premi copia. Quindi non viene preso né sostituito nulla senza un clic.

C'è un limite di dimensione?

Nessun limite rigido. Poiché il lavoro avviene nella tua scheda, il tetto è la tua macchina, e un foglio di stile normale sta molto sotto.

Funziona su un telefono?

Sì. I riquadri si impilano, e il pulsante copia sta sotto l'output. Quindi una compilazione veloce funziona dal telefono quando sei lontano dalla tua macchina.

Continua

Strumenti che vanno con questo

Quattro pagine a cui di solito porta lo stesso lavoro.

  • Minificatore CSS

    Poi riduci il file compilato prima che vada online. Poiché minificare alla fine tiene le note leggibili, qui compili prima e lì minifichi dopo.

    Apri lo strumento →
  • Convertitore di colori CSS

    Controlla anche un colore che hai digitato come variabile. Poi vedi la stessa tonalità in hex, RGB e HSL prima che entri nel foglio di stile.

    Apri lo strumento →
  • Minificatore HTML

    Per il markup che accompagna il foglio di stile, questo toglie i commenti e gli spazi superflui. Quindi entrambi i file escono più ordinati.

    Apri lo strumento →
  • Convertitore da PX a REM

    Poiché una variabile di preprocessore spesso contiene una dimensione di carattere, questo converte i pixel in rem. Quindi la scala resta coerente dopo la compilazione.

    Apri lo strumento →

Compila adesso un foglio di stile

Incolla lo SCSS o il Less, leggi le note e portati via il CSS piatto. Nulla esce dal tuo browser, quindi un foglio di stile sotto contratto resta tuo. Tutto il lavoro sta in un solo incolla.