Vai al contenuto
100% locale

Calcolatore di specificità CSS

Calcola la specificità dei selettori CSS e scopri quale ha la priorità.

Ingresso
Uscita

Calcolatore di specificità CSS

Incolla uno o più selettori CSS, uno per riga, e questo strumento calcola la specificità di ciascuno come il punteggio standard a tre parti: ID, classi (più attributi e pseudo-classi) ed elementi (più pseudo-elementi). La specificità determina quale regola applica il browser quando c'è un conflitto, quindi è utile quando due regole di stile puntano allo stesso elemento e devi sapere quale vince, o quando stai debug perché un override non funziona.

Attiva Dividi elenchi separati da virgole per punteggiare ogni selettore in un elenco come ".a, .b" sulla sua propria riga anziché combinarli in uno. Ordina dal più forte al primo riordina i risultati dalla specificità più alta alla più bassa. Scegli Tabella per un layout a colonne con ID, classi ed elementi scomposti, o notazione 0-1-2 per un punteggio compatto come "1-0-2" per selettore. Mostra spiegazione scomposizione elenca quale parte di ogni selettore — un ID, una classe, un elemento — ha contribuito al punteggio, che è il modo più veloce per vedere esattamente perché una regola supera un'altra.

La calcolatrice segue la specifica CSS Selectors per i casi complicati: :where() ottiene sempre zero indipendentemente da ciò che contiene, mentre :is(), :not() e :has() assumono la specificità dell'argomento più specifico. Un selettore contenente !important è contrassegnato, poiché sostituisce la cascata normale indipendentemente dalla specificità ed è buono da sapere anche se non fa parte del punteggio del selettore stesso. I terminatori di riga Windows e Unix vengono trattati allo stesso modo e le righe vuote vengono ignorate.

Tutto viene eseguito localmente nel tuo browser — i selettori che incolli non vengono mai caricati da nessuna parte, il che è importante se stai controllando una base di codice privata. Copia il risultato, scaricalo come file .txt, o rinvia l'output all'input per continuare a perfezionare i tuoi selettori.

FAQ

Cosa significa la notazione 0-1-2?
Ogni numero è un livello di specificità: il primo conta i selettori ID, il secondo conta le classi, gli attributi e gli pseudo-selettori, e il terzo conta i selettori di elementi e pseudo-elementi. Un selettore con un numero iniziale più alto supera sempre uno con solo un numero secondo o terzo più alto.
Come vengono punteggiati :not(), :is() e :has()?
Questi pseudo-selettori assumono la specificità del selettore più specifico all'interno delle loro parentesi — :not(.a, #b) ottiene un punteggio alto come #b — anziché aggiungere peso proprio. :where() è l'eccezione: ottiene sempre zero, non importa quanto sia complesso l'elenco dei selettori all'interno.
!important influisce sul punteggio di specificità?
No. !important annulla la cascata normale indipendentemente dalla specificità, quindi non cambia il punteggio di un selettore. Lo strumento contrassegna i selettori che lo contengono come una nota separata, perché è facile tralasciarlo quando si confrontano le regole.
Cosa succede con un elenco separato da virgole come ".a, .b"?
Con Dividi elenchi separati da virgole attivato, ogni selettore nell'elenco viene punteggiato sulla sua propria riga, come un browser effettivamente li valuta. Disattiva l'opzione per punteggiare l'intera riga come un singolo selettore combinato.
Il mio CSS viene caricato da qualche parte?
No. La specificità viene calcolata interamente nel tuo browser — i selettori che incolli non lasciano mai il tuo dispositivo.