Layout Masonry in Webflow Senza Codice

Base 7:46 webflowmasonrylayoutcssno-codecms

Crea un layout masonry in stile Pinterest in Webflow con le CSS columns — niente plugin, niente JavaScript, tutto responsive e pronto per il CMS.

Punti chiave

  • Webflow non ha una funzione masonry integrata, ma la proprietà CSS "columns" ti dà quel layout in stile Pinterest con una sola impostazione — niente plugin, niente JavaScript.
  • Trattandosi solo di un’impostazione tipografica sul contenitore, funziona benissimo con una Collection List: ogni elemento del CMS scorre nelle colonne in automatico.
  • Il layout a colonne scorre dall’alto verso il basso, riempiendo una colonna prima di passare alla successiva: l’ordine di lettura è verticale, quindi usalo quando l’ordine esatto degli elementi non è davvero importante.
  • L’unico intoppo è un elemento che si spezza tra due colonne; si risolve con una sola proprietà personalizzata, break-inside: avoid, così ogni card resta intera.
  • Non è un vero grid masonry: gli elementi vengono disposti in sequenza invece di essere impacchettati in modo ottimale, quindi rinunci all’allineamento perfetto in cambio di un setup di pochi secondi.

Capitoli del video

  1. 00:00 Intro
  2. 01:15 Caso d’uso #1: una lista di testimonianze
  3. 03:31 Caso d’uso #2: una galleria di immagini
  4. 04:16 Come evitare che i contenuti si spezzino tra due colonne
  5. 04:53 Aggiungere interazioni e animazioni
  6. 05:56 Pro e contro di questo approccio
  7. 07:03 Outro

Puoi costruire quel bel layout masonry in stile Pinterest in Webflow — elementi di altezze diverse che si incastrano come per magia — senza scrivere una sola riga di codice. Webflow non offre una funzione masonry integrata, ma l’umile proprietà CSS columns ti porta al risultato con una singola impostazione nello Style panel.

Funziona su qualsiasi cosa, ma dà il meglio con una Collection List: punti le colonne sul contenuto del CMS e ogni elemento si posiziona da solo. In questa lezione ti mostro due esempi reali — una sezione di testimonianze e una galleria di immagini — più il piccolo trucco che evita alle card di spezzarsi tra le colonne e una rapida animazione allo scroll per dare vita al tutto.

Prima di sceglierlo, vale la pena sapere esattamente cosa ottieni: un layout davvero veloce e senza codice, perfetto per i contenuti dinamici, con un paio di compromessi onesti di cui ti parlo alla fine.

Come funziona

Invece di Grid o Flexbox, questa tecnica usa il layout multicolonna dei CSS. Imposti la proprietà columns sul contenitore — la Collection List stessa — e il browser distribuisce gli elementi figli su quel numero di colonne, dall’alto verso il basso. Trattandosi di un’impostazione tipografica, non c’è nulla da collegare: aggiungi o togli elementi dal CMS e si riorganizzano da soli. In Webflow la trovi nello Style panel sotto Typography → Columns; impostala su tre, o sul numero che il tuo design richiede.

La spaziatura ha due parti. Il layout a colonne arriva con un column gap predefinito di 1em, che puoi cambiare a piacere (qualcosa come 1.5rem). Quello che non ti dà è lo spazio tra gli elementi impilati nella stessa colonna, quindi aggiungi un margine inferiore a ogni elemento per farli respirare. La parte facile è la responsività: a ogni breakpoint imposti semplicemente un numero di colonne diverso — diciamo due colonne su tablet e una sola sui breakpoint più piccoli, landscape e portrait.

L’unico difetto da conoscere è che un singolo elemento può spezzarsi tra due colonne, e sembra rotto. La soluzione è una riga: seleziona l’elemento (il figlio diretto dell’elemento su cui hai impostato columns) e aggiungi la proprietà personalizzata break-inside con valore avoid. Così il browser mantiene ogni card intera dentro una colonna.

Due compromessi onesti. Primo, il flusso è verticale — gli elementi riempiono una colonna prima di iniziare la successiva — quindi l’ordine visivo di lettura non è da sinistra a destra. Questo lo rende ideale quando l’ordine preciso degli elementi non è cruciale. Secondo, non è un vero grid masonry: gli elementi vengono disposti in sequenza invece di essere impacchettati in modo ottimale, quindi in alcuni casi può lasciare spazi evidenti e hai un controllo limitato su come gli elementi scorrono tra le colonne. Se ti serve un allineamento perfetto useresti un masonry basato su JavaScript — ma per moltissimi casi questo approccio senza codice va benissimo.

Come si usa

  1. Clona il progetto. Prendi il cloneable di Webflow per partire dalla struttura finita, oppure costruiscilo nel tuo progetto.

  2. Prepara il contenuto. Usa una Collection List per gli elementi — testimonianze, immagini, qualsiasi cosa tu stia disponendo. Per una galleria di immagini, imposta la larghezza di ogni immagine al 100% così riempie la colonna su qualsiasi schermo (avvolgere ogni immagine in un componente Lightbox è un bel tocco).

  3. Attiva le colonne. Seleziona la Collection List, apri lo Style panel e sotto Typography imposta Columns su 3 (o sul numero che preferisci). Quel singolo passaggio ti dà l’effetto masonry.

  4. Sistema la spaziatura. Regola il column gap se vuoi (il default è 1em; 1.5rem è un buon punto di partenza), poi aggiungi un margine inferiore — intorno a 1.5rem — all’elemento della lista così gli elementi nella stessa colonna non si toccano.

  5. Rendilo responsive. Sui breakpoint tablet e mobile imposta un numero di colonne più basso — ad esempio due su tablet e una sui breakpoint landscape e portrait.

  6. Evita che le card si spezzino. Seleziona l’elemento della collection (il figlio diretto) e, sotto Custom Properties nello Style panel, aggiungi break-inside con valore avoid così ogni elemento resta in una sola colonna.

  7. Aggiungi un’animazione allo scroll (opzionale). Seleziona l’elemento, vai su Interactions → Scroll Into View, scegli Slide e From Bottom, e imposta un offset tipo 25%. Ora gli elementi entrano dolcemente mentre l’utente scorre, e tutto il layout prende vita.

Se preferisci impostare le proprietà principali via codice, i quattro valori di questa lezione si traducono direttamente in CSS:

/* Sulla Collection List (il contenitore) */
.collection-list {
  columns: 3;
  column-gap: 1.5rem;
}

/* Su ogni elemento della collection (il figlio diretto) */
.collection-item {
  margin-bottom: 1.5rem;
  break-inside: avoid; /* mantiene ogni card intera */
}

/* Immagini della galleria */
.gallery-image {
  width: 100%;
}

Risorse

Domande frequenti

Webflow ha un layout masonry integrato?
No, Webflow non ha una funzione masonry dedicata. Puoi ricreare l’effetto in stile Pinterest in modo nativo impostando la proprietà CSS columns sul contenitore che ospita i tuoi elementi — senza componenti aggiuntivi né codice.
Come creo un layout masonry in Webflow senza codice?
Seleziona il contenitore (una Collection List è perfetta), apri lo Style panel e, sotto Typography, imposta Columns su tre o sul numero che preferisci. Gli elementi si dispongono subito in un layout multicolonna e responsive.
Perché i miei contenuti si spezzano tra due colonne e come lo evito?
Per impostazione predefinita un layout a colonne può spezzare un singolo elemento tra due colonne. Seleziona l’elemento, aggiungi la proprietà personalizzata break-inside con valore avoid e ogni card resterà intera dentro una colonna.
Come aggiungo lo spazio tra gli elementi in un layout a colonne CSS?
Il column gap regola lo spazio orizzontale (di default è 1em e puoi cambiarlo, ad esempio in 1.5rem). Verticalmente non c’è spazio di default, quindi aggiungi un margine inferiore a ogni elemento per distanziarli.
Un masonry con le CSS columns è buono quanto uno in JavaScript?
Nella maggior parte dei casi è più che sufficiente e si costruisce in pochi secondi. Il compromesso è che gli elementi vengono disposti in sequenza invece di essere impacchettati alla perfezione, quindi può lasciare degli spazi e offre meno controllo di un masonry basato su JavaScript.

← Torna al corso

Fa parte anche di questi corsi