CodeGym /Corso Java /Frontend SELF IT /Nozioni base di CSS Grid

Nozioni base di CSS Grid

Frontend SELF IT
Livello 27 , Lezione 0
Disponibile

1.1 Principi fondamentali del Grid Layout

CSS Grid Layout è uno strumento potente per creare layout complessi e adattivi. Offre ai developer un sistema a griglia bidimensionale per posizionare gli elementi, semplificando la creazione di layout sia semplici che complessi. Esaminiamo i concetti principali e la sintassi di CSS Grid, senza addentrarci nelle proprietà specifiche.

Concetti principali di CSS Grid

  1. Grid container e Grid elementi:
    • Grid container è un elemento che include display: grid. Questo elemento diventa il contenitore della griglia e tutti i suoi elementi figlio immediati diventano Grid elementi.
    • Grid elementi sono gli elementi figlio immediati del Grid container, che vengono posizionati nella griglia.
  2. Assi della griglia:
    • Asse principale (inline axis) e asse di blocco (block axis): Grid supporta due assi per posizionare gli elementi — l'asse principale e l'asse di blocco. Di default, l'asse principale è orizzontale, mentre l'asse di blocco è verticale.
  3. Celle della griglia (Grid Cells):
    • Celle della griglia sono i blocchi di base che si formano all'intersezione di righe e colonne. Ogni Grid elemento occupa una o più celle.
  4. Linee della griglia (Grid Lines):
    • Linee della griglia sono linee orizzontali e verticali che separano righe e colonne. Vengono usate per posizionare gli elementi rispetto alla griglia.
  5. Aree della griglia (Grid Areas):
    • Aree della griglia sono aree nominali della griglia, create unendo più celle. Permettono di raggruppare celle e posizionare elementi in aree specifiche.

1.2 Elementi sintattici

Elementi sintattici principali di CSS Grid

1. Creazione di un Grid container:

    
      .container {
        display: grid; /* o display: inline-grid */
      }
    
  

2. Definizione della struttura della griglia:

CSS
    
      .container {
        display: grid;
        grid-template-columns: 100px 200px 100px; /* Definisce tre colonne di larghezza diversa */
        grid-template-rows: 50px 100px; /* Definisce due righe di altezza diversa */
      }
    
  

3. Unione delle celle con grid-area:

CSS
    
      .item1 {
        grid-area: 1 / 1 / 2 / 4; /* L'elemento occupa la prima riga e le prime tre colonne */
      }
    
  

4. Posizionamento automatico degli elementi:

CSS
    
      .container {
        display: grid;
        grid-auto-rows: minmax(100px, auto); /* Imposta l'altezza minima delle righe */
      }
    
  

1.3 Esempi

Esempio semplice di layout con CSS Grid:

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>CSS Grid Example</title>
          <style>
            .container {
              display: grid;
              grid-template-columns: 1fr 2fr 1fr;
              grid-template-rows: 100px 200px;
              gap: 10px;
            }

            .item {
              background-color: lightblue;
              padding: 20px;
              text-align: center;
            }
          </style>
        </head>
        <body>
          <div class="container">
            <div class="item">Item 1</div>
            <div class="item">Item 2</div>
            <div class="item">Item 3</div>
            <div class="item">Item 4</div>
            <div class="item">Item 5</div>
            <div class="item">Item 6</div>
          </div>
        </body>
      </html>
    
  

Spiegazione:

  • Il contenitore .container imposta tre colonne, di cui la prima e la terza occupano una porzione uguale dello spazio disponibile, mentre la seconda il doppio.
  • Vengono impostate due righe con altezza fissa.
  • La proprietà gap imposta la distanza tra le celle della griglia.
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION