CodeGym /Corso Java /Frontend SELF IT /Sfondo Multilivello

Sfondo Multilivello

Frontend SELF IT
Livello 18 , Lezione 4
Disponibile

4.1 Principi fondamentali

CSS ti permette di usare più immagini di sfondo in un elemento, aprendo un mondo di possibilità per creare effetti visivi complessi e interessanti. Con la proprietà background-image e le proprietà correlate, puoi impostare diversi strati di immagini di sfondo, controllandone l'ordine, la posizione e altre caratteristiche.

Sintassi

Per specificare più immagini di sfondo, si utilizza una sintassi in cui le immagini vengono elencate separate da virgole:

    
      element {
        background-image: imageUrl1, imageUrl2, imageUrl3;
      }
    
  

Proprietà per configurare ogni livello

Oltre a background-image, ci sono altre proprietà per configurare ogni strato di immagine di sfondo che supportano anch'esse valori multipli separati da virgole:

  • background-position
  • background-size
  • background-repeat
  • background-origin
  • background-clip
  • background-attachment

Ordine dei livelli

Le immagini sono disposte in livelli nell'ordine in cui sono elencate, dove la prima immagine è la più vicina all'utente e l'ultima è la più vicina allo sfondo dell'elemento.

4.2 Sovrapposizione delle immagini

Semplice sovrapposizione delle immagini.

Esempio d'uso:

CSS
    
      .multi-bg {
        width: 300px;
        height: 300px;
        background-image: url('https://via.placeholder.com/150'), url('https://via.placeholder.com/100');
        background-position: center, top left;
        background-repeat: no-repeat, no-repeat;
        border: 1px solid #000;
      }
    
  
HTML
    
      <body>
        <div class="multi-bg">Sfondo Multilivello</div>
      </body>
    
  

Spiegazione del codice:

  • background-image: url('https://via.placeholder.com/150'), url('https://via.placeholder.com/100');: imposta due immagini di sfondo
  • background-position: center, top left;: centra la prima immagine e posiziona la seconda immagine in alto a sinistra
  • background-repeat: no-repeat, no-repeat;: disabilita la ripetizione per entrambe le immagini

4.3 Uso di immagini multiple

Uso di più immagini di sfondo con dimensioni diverse.

Esempio d'uso:

CSS
    
      .multi-bg-sizes {
        width: 300px;
        height: 300px;
        background-image: url('https://via.placeholder.com/150'), url('https://via.placeholder.com/100');
        background-position: center, bottom right;
        background-repeat: no-repeat, no-repeat;
        background-size: 50% 50%, 30% 30%;
        border: 1px solid #000;
      }
    
  
HTML
    
      <body>
        <div class="multi-bg-sizes">Sfondo Multilivello con Dimensioni</div>
      </body>
    
  

Spiegazione del codice:

  • background-size: 50% 50%, 30% 30%;: scala la prima immagine fino al 50% della larghezza e dell'altezza dell'elemento, e la seconda immagine fino al 30% della larghezza e dell'altezza dell'elemento

4.4 Immagini trasparenti

Sovrapposizione di immagini con trasparenza.

Esempio d'uso:

CSS
    
      .multi-bg-opacity {
        width: 300px;
        height: 300px;
        background-image: url('https://via.placeholder.com/150'), url('https://via.placeholder.com/100');
        background-position: center, center;
        background-repeat: no-repeat, no-repeat;
        background-size: cover, 50%;
        border: 1px solid #000;
        position: relative;
      }

      .multi-bg-opacity::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
      }
    
  
HTML
    
      <body>
        <div class="multi-bg-opacity">Sfondo Multilivello con Trasparenza</div>
      </body>
    
  

Spiegazione del codice:

  • background-size: cover, 50%;: scala la prima immagine per coprire tutto l'elemento, e la seconda immagine fino al 50% della dimensione dell'elemento
  • ::before: un pseudo-elemento che aggiunge un livello nero semi-trasparente sopra le immagini di sfondo

4.5 Ritaglio dello sfondo

Uso di altre proprietà con più immagini di sfondo.

background-origin e background-clip

Queste proprietà controllano l'area in cui viene visualizzata l'immagine di sfondo e l'area di ritaglio dello sfondo.

Esempio d'uso:

CSS
    
      .multi-bg-origin-clip {
        width: 300px;
        height: 300px;
        background-image: url('https://via.placeholder.com/150'), url('https://via.placeholder.com/100');
        background-position: center, center;
        background-repeat: no-repeat, no-repeat;
        background-origin: padding-box, content-box;
        background-clip: border-box, padding-box;
        border: 10px solid #000;
        padding: 20px;
      }
    
  
HTML
    
      <body>
        <div class="multi-bg-origin-clip">Sfondo Multilivello con background-origin e background-clip</div>
      </body>
    
  

Spiegazione del codice:

  • background-origin: padding-box, content-box;: la prima immagine inizia dal bordo interno del padding, la seconda immagine dal contenuto dell'elemento
  • background-clip: border-box, padding-box;: la prima immagine viene ritagliata al bordo esterno del bordo, la seconda immagine al bordo interno del padding
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION