0Pricing
CSS Academy · Lezione

Organizzazione dei file: pattern ITCSS e 7-1

Strutturi i file CSS usando il pattern Inverted Triangle o 7-1 per progetti scalabili.

Organizzazione dei file: pattern ITCSS e 7-1 è una lezione CSS Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento CSS Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso CSS Academy include 4 lezioni in totale.

Perché organizzare i file CSS?

Con la crescita dei progetti, un singolo file CSS diventa difficile da gestire. Le strutture di organizzazione dei file aiutano i team a suddividere il CSS in livelli logici, caricati nell'ordine corretto e facili da consultare.

ITCSS: CSS a triangolo invertito

ITCSS organizza il CSS in livelli ordinati secondo una specificità crescente. Come in un triangolo invertito, le regole più ampie e generiche si trovano in alto, mentre quelle più specifiche sono in basso. Questo rispetta la cascata naturale.

Livelli ITCSS

I 7 livelli di ITCSS (dal più al meno generico):

  1. Settings — Variabili e design token
  2. Tools — Mixin e funzioni
  3. Generic — Reset/normalizzazione
  4. Elements — Stili di base degli elementi HTML
  5. Objects — Astrazioni del layout (senza aspetti estetici)
  6. Components — Componenti dell'interfaccia
  7. Utilities — Sovrascritture e strumenti di supporto; qui è consentito !important

Struttura dei file ITCSS

Una struttura tipica dei file ITCSS:

  <pre class="file-tree">src/styles/
  01-settings/
    _colors.scss
    _typography.scss
    _spacing.scss
  02-tools/
    _mixins.scss
  03-generic/
    _reset.scss
  04-elements/
    _headings.scss
    _links.scss
  05-objects/
    _container.scss
    _media.scss
  06-components/
    _button.scss
    _card.scss
  07-utilities/
    _text-align.scss
    _display.scss</pre>

Pattern 7-1

Il pattern 7-1 organizza Sass in 7 cartelle e 1 file principale che importa ogni elemento:

  • abstracts/ — variabili, funzioni e mixin
  • base/ — reset, tipografia ed elementi di base
  • components/ — pulsanti, card e finestre modali
  • layout/ — intestazione, piè di pagina, barra laterale e griglia
  • pages/ — stili specifici delle pagine
  • themes/ — temi multipli
  • vendors/ — CSS di terze parti

File di ingresso principale

Un file principale main.scss importa tutti i partial nell'ordine corretto:

  <pre class="file-tree">@use 'abstracts/variables';
@use 'abstracts/mixins';
@use 'base/reset';
@use 'base/typography';
@use 'components/button';
@use 'components/card';
@use 'layout/header';</pre>

Livelli CSS (@layer) per l'organizzazione

Il moderno @layer CSS offre gli stessi vantaggi di ordinamento della cascata di ITCSS senza un preprocessore. I livelli vengono dichiarati una volta e la loro priorità è fissa, indipendentemente dall'ordine nel codice sorgente.

  <div class="card text-primary">Layered card text</div>

Co-localizzazione e centralizzazione

Un'alternativa ai file di stile centralizzati consiste nel co-localizzare il CSS del componente accanto al file del componente. È una pratica comune nei progetti React/Vue che usano CSS Modules o CSS-in-JS.

Denominazione dei partial Sass

I file partial di Sass iniziano con un carattere di sottolineatura (_button.scss). Il carattere indica a Sass che il file non deve essere compilato autonomamente, ma deve essere importato in un file principale.

PostCSS come alternativa

Se non utilizza Sass, PostCSS con il plugin @import oppure @import del CSS nativo insieme a @layer consente di ottenere la stessa organizzazione dei file senza un preprocessore.

File CSS dei componenti

Che utilizzi ITCSS, il pattern 7-1 o file co-localizzati, ogni componente dovrebbe avere il proprio file. Assegni al file il nome del componente a cui applica gli stili: _card.scss, button.css, Nav.module.css.

Verifica rapida

In ITCSS, quale livello si trova all'estremità superiore del triangolo invertito (più ampio e meno specifico)?

Riepilogo

ITCSS ordina i livelli CSS dal generico allo specifico seguendo la cascata. Il pattern 7-1 organizza Sass in 7 cartelle importate attraverso un unico file principale. Il moderno @layer CSS offre nativamente lo stesso controllo sulla cascata. Che siano centralizzati o co-localizzati, il principio fondamentale è: un file per componente, con importazioni ordinate in modo coerente.

Domande Frequenti

La lezione «Organizzazione dei file: pattern ITCSS e 7-1» è gratuita?

Sì — il testo completo di «Organizzazione dei file: pattern ITCSS e 7-1» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso CSS Academy, passa a CoddyKit PRO. Il corso CSS Academy include 4 lezioni in totale.

Cosa imparerò in «Organizzazione dei file: pattern ITCSS e 7-1»?

Strutturi i file CSS usando il pattern Inverted Triangle o 7-1 per progetti scalabili. Eserciti CSS Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare CSS Academy?

Non è richiesta alcuna esperienza precedente. CSS Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Organizzazione dei file: pattern ITCSS e 7-1»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione CSS Academy?

Sì. Ogni lezione CSS Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Perché l'architettura CSS è importante
  2. BEM: denominazione Block Element Modifier
  3. Organizzazione dei file: pattern ITCSS e 7-1
  4. Evitare le guerre di specificità
← Torna a CSS Academy