Generatore di Flexbox

Configuri un contenitore flex e i relativi elementi con controlli visivi, osservi la risposta del layout in tempo reale e copi il codice CSS con un clic.

Preset
Contenitore
Direzione
Wrap
Justify content
Align items
Elementi
Elemento 1
Align self
CSS
Regoli il contenitore e i singoli elementi per definire il layout.

Il layout viene creato direttamente nel Suo browser. Nessun dato impostato viene caricato su BroBroGo.

FAQ

Qual è la differenza tra justify-content e align-items?

Justify-content distribuisce gli elementi lungo l'asse principale (la direzione di scorrimento della riga o della colonna), mentre align-items li posiziona lungo l'asse perpendicolare. Se si cambia la direzione da riga a colonna, i due assi si invertono: justify-content agirà dall'alto in basso e align-items da sinistra a destra.

Come funzionano i controlli per i singoli elementi?

Selezioni un elemento in base al suo numero, quindi imposti quanto debba crescere per occupare lo spazio rimanente (grow), quanto debba rimpicciolirsi quando lo spazio è limitato (shrink), la sua dimensione iniziale (basis) e il suo allineamento specifico sull'asse secondario. La proprietà order consente di spostare la posizione visiva dell'elemento senza modificare il codice HTML. Solo gli elementi effettivamente modificati riceveranno una regola dedicata nel codice CSS generato.

Quando sono importanti le proprietà wrap e align-content?

Se l'andata a capo (wrap) è disattivata, tutti gli elementi vengono forzati su un'unica riga e potrebbero essere compressi. Attivandola, gli elementi che non rientrano nello spazio disponibile passeranno alla riga successiva: in questo scenario entra in gioco align-content, che gestisce la spaziatura tra le righe come gruppo. La proprietà gap definisce lo spazio tra gli elementi e tra le righe, senza ricorrere ai margini.

Introduzione al Generatore di Flexbox

Il Generatore di Flexbox è uno strumento visivo progettato per semplificare la creazione e la comprensione dei layout basati su CSS Flexbox. Questo strumento consente di configurare un contenitore flex e i relativi elementi attraverso controlli visivi intuitivi, osservando la risposta del layout in tempo reale e copiando il codice CSS generato con un semplice clic.

L'utilità di questo generatore si rivolge a diverse categorie di utenti:

  • Chi desidera progettare visivamente un layout CSS Flexbox.
  • Chi ha la necessità di generare rapidamente il codice CSS per un contenitore flex e i suoi elementi.
  • Chi vuole comprendere l'effetto pratico delle diverse proprietà flexbox sul comportamento del layout.
  • Chi sta creando strutture di layout comuni, come elementi centrati, barre di navigazione, pile di elementi, schede o barre laterali.

Configurazione del Contenitore Flex

La sezione Contenitore permette di gestire il comportamento globale del layout agendo direttamente sulle proprietà del contenitore padre. I controlli disponibili includono:

  • Direzione: Definisce l'orientamento dell'asse principale. È possibile scegliere tra le opzioni Riga, Riga invertita, Colonna e Colonna invertita.
  • Wrap: Determina se gli elementi devono rimanere su un'unica riga o distribuirsi su più righe. Le opzioni includono No wrap, Wrap e Wrap reverse.
  • Justify content: Gestisce la distribuzione dello spazio lungo l'asse principale. Le opzioni selezionabili sono Start, End, Center, Space between, Space around e Space evenly.
  • Align items: Controlla l'allineamento degli elementi lungo l'asse perpendicolare. Le opzioni includono Start, End, Center, Stretch e Baseline.
  • Align content: Regola la spaziatura delle righe come gruppo quando gli elementi si distribuiscono su più righe. È configurabile su Start, End, Center, Stretch, Space between, Space around e Space evenly.
  • Gap: Permette di inserire un valore numerico per impostare lo spazio vuoto tra gli elementi e tra le righe.

Gestione e Proprietà dei Singoli Elementi

All'interno della sezione Elementi, l'utente può manipolare la struttura aggiungendo o modificando i singoli componenti del layout. Facendo clic su Aggiungi elemento, viene generato un nuovo elemento visivo (ad esempio, "Elemento 5") all'interno dell'anteprima.

Per ciascun elemento è possibile personalizzare le seguenti proprietà numeriche e di allineamento:

  • Order: Un valore numerico che modifica l'ordine di visualizzazione dell'elemento rispetto agli altri.
  • Grow: Un valore numerico che definisce la capacità dell'elemento di espandersi per occupare lo spazio rimanente.
  • Shrink: Un valore numerico che stabilisce la capacità dell'elemento di contrarsi quando lo spazio è insufficiente.
  • Basis: Definisce la dimensione iniziale dell'elemento prima della distribuzione dello spazio; accetta un valore numerico o l'opzione Base automatica.
  • Align self: Consente di sovrascrivere l'allineamento generale definito dal contenitore per il singolo elemento. Le opzioni disponibili sono Auto, Start, End, Center, Stretch e Baseline.

Regole di Generazione del Codice e Comportamenti del Layout

Il funzionamento del generatore segue logiche precise per garantire un codice CSS pulito e un'anteprima fedele:

  • Generazione selettiva del CSS: Nel box CSS, vengono generate regole CSS specifiche solo per gli elementi che hanno subito modifiche rispetto ai valori predefiniti. Se un elemento mantiene le proprietà di default, non verrà creata una regola dedicata.
  • Interazione tra gli assi: Quando si modifica la direzione del contenitore da riga a colonna, l'asse principale e l'asse perpendicolare si invertono. Questo comportamento influisce direttamente sul funzionamento pratico di justify-content e align-items.
  • Gestione del Wrap: Se l'andata a capo è disattivata (No wrap), tutti gli elementi vengono forzati a rimanere su una sola riga. Quando l'andata a capo è attiva (Wrap), gli elementi che superano la larghezza del contenitore scendono sulla riga successiva; in questo scenario, la proprietà align-content interviene per spaziare le righe create.
  • Funzione del Gap: La proprietà Gap agisce impostando lo spazio sia tra i singoli elementi adiacenti sia tra le righe generate dal wrap.
  • Copia del codice: Facendo clic sul pulsante Copia CSS, il codice generato viene salvato negli appunti e lo stato del pulsante cambia temporaneamente in "Copied" per confermare l'operazione.

Rispetto della Privacy

L'utilizzo del Generatore di Flexbox è sicuro e privato. Il layout viene creato direttamente nel browser dell'utente. Nessun dato o impostazione configurata all'interno dello strumento viene caricato sui server di BroBroGo.


Domande Frequenti (FAQ)

Qual è la differenza tra justify-content e align-items?

Justify-content distribuisce gli elementi lungo l'asse principale (la direzione di scorrimento della riga o della colonna), mentre align-items li posiziona lungo l'asse perpendicolare. Se si cambia la direzione da riga a colonna, i due assi si invertono: justify-content agirà dall'alto in basso e align-items da sinistra a destra.

Come funzionano i controlli per i singoli elementi?

Selezioni un elemento in base al suo numero, quindi imposti quanto debba crescere per occupare lo spazio rimanente (grow), quanto debba rimpicciolirsi quando lo spazio è limitato (shrink), la sua dimensione iniziale (basis) e il suo allineamento specifico sull'asse secondario. La proprietà order consente di spostare la posizione visiva dell'elemento senza modificare il codice HTML. Solo gli elementi effettivamente modificati riceveranno una regola dedicata nel codice CSS generato.

Quando sono importanti le proprietà wrap e align-content?

Se l'andata a capo (wrap) è disattivata, tutti gli elementi vengono forzati su un'unica riga e potrebbero essere compressi. Attivandola, gli elementi che non rientrano nello spazio disponibile passeranno alla riga successiva: in questo scenario entra in gioco align-content, che gestisce la spaziatura tra le righe come gruppo. La proprietà gap definisce lo spazio tra gli elementi e tra le righe, senza ricorrere ai margini.