Gradienti

Frontend SELF IT
Livello 18 , Lezione 5
Disponibile

5.1 Gradiente lineare

I gradienti sono uno strumento potente nel web design, permettendo di creare transizioni morbide tra colori senza usare immagini. CSS offre due tipi principali di gradienti: lineari (linear-gradient) e radiali (radial-gradient). Questi gradienti vengono utilizzati per sfondi di elementi, creazione di pulsanti e altri effetti visivi.

Gradienti lineari (linear-gradient)

Un gradiente lineare crea una transizione morbida tra due o più colori lungo una linea (asse) specifica. La linea può essere orizzontale, verticale o con qualsiasi angolo.

Sintassi

    
      background: linear-gradient( direction, color-stop1, color-stop2, ...);
    
  

Valori

  • direction: direzione del gradiente. Può essere specificato in gradi (ad esempio, 90deg), usando parole chiave (ad esempio, to right, to bottom left)
  • color-stop: fermata del colore che determina il colore e la sua posizione nel gradiente

Esempi d'uso

Gradiente orizzontale:

CSS
    
      .linear-gradient-horizontal {
        width: 200px;
        height: 200px;
        background: linear-gradient(to right, red, yellow);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-horizontal">Gradiente orizzontale</div>
      </body>
    
  

Gradiente verticale:

CSS
    
      .linear-gradient-vertical {
        width: 200px;
        height: 200px;
        background: linear-gradient(to bottom, blue, green);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-vertical">Gradiente verticale</div>
      </body>
    
  

Gradiente diagonale:

CSS
    
      .linear-gradient-diagonal {
        width: 200px;
        height: 200px;
        background: linear-gradient(45deg, purple, pink);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-diagonal">Gradiente diagonale</div>
      </body>
    
  

Gradiente multicolore:

CSS
    
      .linear-gradient-multi {
        width: 200px;
        height: 200px;
        background: linear-gradient(to right, red, yellow, green, blue);
      }
    
  
HTML
    
      <body>
        <div class="linear-gradient-multi">Gradiente multicolore</div>
      </body>
    
  

Spiegazione del codice:

  • to right: il gradiente va da sinistra a destra
  • to bottom: il gradiente va dall'alto verso il basso
  • 45deg: il gradiente va con un angolo di 45 gradi
  • red, yellow, green, blue: varie fermate del colore per creare un gradiente multicolore

5.2 Gradienti radiali

radial-gradient crea una transizione morbida tra colori che parte dal centro e si espande verso i bordi di un cerchio o ellisse. I gradienti radiali possono creare effetti visivi interessanti, come l'imitazione della tridimensionalità.

Sintassi:

    
      background: radial-gradient( direction, color-stop1, color-stop2, ...);
    
  

Valori:

  • shape: forma del gradiente, può essere circle (cerchio) o ellipse (ellisse) (valore predefinito)
  • size: dimensione del gradiente, può essere closest-side, closest-corner, farthest-side, farthest-corner
  • position: posizione del centro del gradiente, può essere specificato in percentuali, pixel o usando parole chiave (ad esempio, center, top left)
  • color-stop: fermata del colore che determina il colore e la sua posizione nel gradiente

Esempi d'uso

Gradiente circolare:

CSS
    
      .radial-gradient-circle {
        width: 200px;
        height: 200px;
        background: radial-gradient(circle, red, yellow);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-circle">Gradiente circolare</div>
      </body>
    
  

Gradiente ellittico:

CSS
    
      .radial-gradient-ellipse {
        width: 200px;
        height: 200px;
        background: radial-gradient(ellipse, blue, green);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-ellipse">Gradiente ellittico</div>
      </body>
    
  

Gradiente dal centro:

CSS
    
      .radial-gradient-at-center {
        width: 200px;
        height: 200px;
        background: radial-gradient(circle at center, purple, pink);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-at-center">Gradiente dal centro</div>
      </body>
    
  

Gradiente dall'angolo:

CSS
    
      .radial-gradient-at-corner {
        width: 200px;
        height: 200px;
        background: radial-gradient(circle at top left, red, blue, green);
      }
    
  
HTML
    
      <body>
        <div class="radial-gradient-at-corner">Gradiente dall'angolo</div>
      </body>
    
  

Spiegazione del codice:

  • circle: crea un gradiente circolare
  • ellipse: crea un gradiente ellittico
  • at center: il gradiente parte dal centro
  • at top left: il gradiente parte dall'angolo in alto a sinistra
  • red, blue, green: varie fermate del colore per creare un gradiente multicolore

5.3 Impostazioni aggiuntive dei gradienti

Gradienti ripetuti

1. Gradienti lineari ripetuti (repeating-linear-gradient)

I gradienti lineari ripetuti creano un pattern ripetuto con un gradiente lineare.

CSS
    
      background: repeating-linear-gradient(45deg, red, yellow 10%, green 20%);
    
  

2. Gradienti radiali ripetuti (repeating-radial-gradient)

CSS
    
      background: repeating-radial-gradient(circle, red, yellow 10%, green 20%);
    
  

3. Fermate del colore trasparenti

Le fermate del colore possono includere trasparenza per creare effetti visivi più complessi.

CSS
    
      background: linear-gradient(to right, rgba(255, 0, 0, 0.5), rgba(0, 0, 255, 0.5));
    
  

4. Uso congiunto di più gradienti

È possibile utilizzare più gradienti per creare sfondi complessi.

CSS
    
      background: linear-gradient(to right, red, yellow), radial-gradient(circle, blue, green);
    
  
1
Compito
Frontend SELF IT, livello 18, lezione 5
Bloccato
Gradiente lineare
Gradiente lineare
1
Compito
Frontend SELF IT, livello 18, lezione 5
Bloccato
Gradiente radiale
Gradiente radiale
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION