GH GambleHub

Sistema di rete e modularità

1) Perché una griglia

La griglia fornisce un comportamento prevedibile per la crescita di contenuti e schermi:
  • accelera il design e lo sviluppo (lingua comune: «12 colonne, gutter 24»),
  • riduce il carico cognitivo (ritmo regolare, linee stabili),
  • aumenta la portabilità dei componenti tra le pagine,
  • consente di costruire una libreria modulare senza «microprocessore».

2) Elementi di base della griglia

Contenitore: larghezza massima del contenuto, area centrata.
Le colonne sono aree verticali per il posizionamento dei moduli.
Gutter è lo spazio orizzontale tra le colonne.
Margin è un campo esterno a sinistra/destra del contenitore.
Row/Track è una guida orizzontale (in CSS Grid - righe/tracce).
Baseline è la griglia verticale della tipografia.

Il ritmo verticale consigliato è 8-pt (a volte 4-pt per le sfumature), unità di dimensioni e rientri sono multipli 4/8.

3) Breakpoint e contenitori

Prendere i breakpoint dai veri analisti dei dispositivi. Esempio:
PuntoLarghezza del vorticeCall in colonnaContenitoreGutter
XS≥ 3604fluid16
SM≥ 6006560–58416
MD≥ 8408760–80820
LG≥ 1200121104–115224
XL≥ 1440121280–132024–32
Regole:
  • Contenitore bitmap (fix. max-width) su schermi di grandi dimensioni, fluid su schermi mobili.
  • Gutter può aumentare delicatamente a grandi breakpoint.
  • Le colonne sono 4/6/8/12 come «set principale».

4) Modularità e densità

Il modulo è un blocco di contenuti che occupa 1 N colonne e multipli di altezza baseline.

Densità:
  • Comfort (dashboard, lettura) è più grande dei caratteri, 16-24.
  • Compact (tabelle, pro-mode): caratteri + 0/-1 px, rientri verticali 4/-8, altezza di riga fissa (multiplo 8).

I componenti devono avere due preset di densità minima.

5) Tipografia e griglia baseline

Selezionare la linea base-height (ad esempio 24 px) e sincronizzare le altezze degli elementi (pulsanti 40/48/56 px multipli baseline).
Le intestazioni fissano i ritmi verticali, ovvero il rientro sopra/sotto il multiplo 8.
Allineate le icone alla cappa del testo.

6) Modelli di mappatura

6. 1 Carte (cards)

Griglia - mosaico (fix. larghezza della carta) o del colletto (scheda = N colonne).
Altezza minima del contenuto per evitare «salto» durante il download; skeleton all'interno della carta.
Padding interno: 16/20/24 a seconda del breakpoint.

6. 2 Tabelle

Contenitore per tutta la larghezza; congeliamo la prima colonna/cappello con lo scroll orizzontale.
Celle - baseline-multiple; le colonne numeriche sono allineate a cifre decimali/decimali.
XS - Righe di carte (stacked layout) invece di uno scroll orizzontale se le colonne sono troppe.

6. 3 Moduli

Invertebrati per XS/SM, doppio o triciclo per MD + (in base alla logica delle tabelle/sezioni).
Il campo + etichetta + testo help si inserisce in un modulo comune (altezza multipla 8).

6. 4 Dashboard

Grid con piste e nuvole fisse (areas) per la stabilità.
I widget hanno la larghezza minima e massima nelle colonne; altezza - multipli baseline.
Quando si riceve - Cambia la colonna, non frazioniamo i widget in modo casuale.

7) Adattabilità, auto-layout e comportamento

Contenuto davanti alla griglia: la griglia si adatta al contenuto, non lo rompe.

Figma/Auto-layout:
  • Usi constrains (left/right/center) e auto-layout per le schede/elenchi.
  • Supporta le opzioni del componente per XS/SM/MD/LG (modifica dei paddings, ordine dei slot).
CSS:
  • A livello di sezione, CSS Grid (aree, colonne, righe).
  • All'interno dei componenti, Flex (assi, bilanciamento degli spazi).

8) CSS Grid/Flex - laboratorio

Contenitore e griglia a 12 coli:
css
.container {
max-width: 1280px; margin: 0 auto; padding: 0 16px;
display: grid; gap: 24px;
grid-template-columns: repeat(12, minmax(0, 1fr));
}
.col-4 { grid-column: span 4; }
@media (max-width: 1199px) {
.container { grid-template-columns: repeat(8, 1fr); gap: 20px; }
.col-4 {grid-column: span 8; }/full-width card/
}
@media (max-width: 839px) {
.container { grid-template-columns: repeat(6, 1fr); gap: 16px; }
}
@media (max-width: 599px) {
.container { grid-template-columns: repeat(4, 1fr); }
}
Aree grid (dashboard):
css
.dashboard {
display: grid; gap: 24px;
grid-template:
"kpi kpi chart chart" auto
"tbl tbl chart chart" 1fr / 1fr 1fr 1fr 1fr;
}
.kpi  { grid-area: kpi; }
.chart { grid-area: chart; }
.tbl  { grid-area: tbl; }
@media (max-width: 1199px) {
.dashboard { grid-template:
"kpi" auto "chart" auto "tbl" 1fr / 1fr; }
}

9) Indentazioni e token

Fissare la scala nel sistema di progettazione.

json
{
"space": { "xs": 4, "sm": 8, "md": 12, "lg": 16, "xl": 24, "2xl": 32, "3xl": 48 },
"container": { "sm": 584, "md": 808, "lg": 1152, "xl": 1320 },
"gutter": { "sm": 16, "md": 20, "lg": 24, "xl": 32 },
"columns": { "xs": 4, "sm": 6, "md": 8, "lg": 12 }
}
Regole:
  • I rientri interni dei componenti provengono da «space».
  • I campi di contenitore esterni sono in «gutter »/« margin».
  • Altezza elementi - Multipli 8 (40/48/56).

10) Componenti modulari

Il componente deve:
  • sapere quante colonne prende su ogni breakpoint;
  • avere dimensioni minime/massime;
  • indipendentemente dai pixel «magici», solo i token;
  • mantenere la griglia interna (titolo, contenuto, futer) su baseline.

11) Immagini e proiezioni multimediali

Fissa aspect-ratio (ad esempio 16/9, 4/3, 1/1) per la prevendita e le carte.

css
.media { aspect-ratio: 16 / 9; object-fit: cover; }

Su XS utilizzare full-bleed (immagine ai bordi) solo per promo, il resto del contenuto segue il contenitore.
Il testo nell'immagine è solo su piastrelle/overlay, il contrasto di AA.

12) RTL e localizzazione

La direzione grid si specchia: "dir =" rtl "e": dir (rtl) "ha modificato per i ritiri/icone.
Ordine delle colonne e aree appiccicose (frozen columns) nelle tabelle - Tenere presente il mirroring.
Lunghezza delle righe e spostamenti possono cambiare l'altezza dei moduli.

13) Specificità del iGaming

Aree promozionali e banner: grid separati con grandi moduli; testo sempre sulla tinta, contrasto AAA per notifiche responsabili (18 +, limiti, rischi).
Leader/classificazioni: tabelle con prima colonna fissa e cappello sticky, numeri tabulari (tabulo-nums), altezza riga multipla 8.
Dashboard giocatori/operazioni: widget (sessioni, depositi, RTP, Net Deposits) occupano 3-6 colonne al 12-grid; la ricostruzione è a cascata su MD/SM.
Tessere dei tornei: griglia delle schede 3 x N (LG), 2 x N (MD), 1 x N (SM/XS); Il CTA è in posizione permanente.

14) Disponibilità e focus

Gli anelli di fuoco non devono rompere il ritmo: aggiungete outline-offset o pseudoelemento interno.
Dimensioni minime click: 44 x 44 (mob) / 32 x 32 (disctop).
Non codificare il significato solo con il posizionamento; salvare le etichette di testo e gli attributi aria.

15) Prestazioni

Riduce la profondità dei grid: 1 grid principale sezione + flex all'interno.
Evitare ombre pesanti/maschere su centinaia di schede; usate stili piatti negli elenchi.
Caricamento pigro di un lettore multimediale; proporzioni fisse impediscono il CLS.

16) Antipattern

La «griglia di sapore» di ogni pagina si dissolve la consistenza.
Gutter cambia casualmente per sezione.
Densità incoerente (in uno schermo e «CD» e «comfort»).
Componenti che dipendono dalle cortine magiche (senza colonne o token).
Tabelle con scroll orizzontale sul mobile senza mappatura alternativa.
Testo nell'immagine senza piastrelle o controllo del contrasto.

17) Lista assegni QA

Struttura

  • Le colonne/contenitore/margine corrispondono ai breakpoint.
  • Gutter è stabile all'interno della pagina.
  • Le altezze e i rientri sono multipli 8.

Componenti

  • Definite le larghezze (XS.. XL) e min/max.
  • Le griglie interne sono coerenti con baseline.

Tabelle/moduli

  • Sticky cappellino/prima colonna; modalità stacked su XS.
  • Campi modulo multiplo baseline; l'etichetta/help testo non salta.

A11y

  • Gli stili di attivazione non rompono il ritmo. Le zone click sono minime.

Performance

  • Nessun CLS a causa dei supporti multimediali; caricamento pigro attivato.

18) Token e documentazione in progettazione

Pubblicare la pagina Grid & Spacing:
  • i valori container, columns, gutter, space, baseline;
  • esempi di mappatura (schede/tabelle/moduli/dashboard)
  • preset densità (Comfort/Compact) e il loro impatto sui componenti;
  • codice-snippet per CSS Grid/Flex e Figma-stili/leaute.

Breve riepilogo

La griglia è un accordo tra design e sviluppo. Fissate i breakpoint, i contenitori, le colonne e il ritmo di 8 pt, i token e i modelli di mappatura, le opzioni di densità, adattabilità e disponibilità. Le pagine vengono scalate in modo prevedibile, i componenti vengono riutilizzati e il comando è più veloce e stabile.

Contact

Mettiti in contatto

Scrivici per qualsiasi domanda o richiesta di supporto.Siamo sempre pronti ad aiutarti!

Avvia integrazione

L’Email è obbligatoria. Telegram o WhatsApp — opzionali.

Il tuo nome opzionale
Email opzionale
Oggetto opzionale
Messaggio opzionale
Telegram opzionale
@
Se indichi Telegram — ti risponderemo anche lì, oltre che via Email.
WhatsApp opzionale
Formato: +prefisso internazionale e numero (ad es. +39XXXXXXXXX).

Cliccando sul pulsante, acconsenti al trattamento dei dati.