logo Dove iniziare Linguaggi Aiuto Blog
Home Dove iniziare Linguaggi Aiuto e Supporto Info e Blog

La proprietà overflow in CSS

La proprietà overflow in CSS specifica il comportamento di un elemento che ha un contenuto più grande della sua dimensione. Ad esempio, un <div> che ha un'altezza di 100px e il testo all'interno occupa 200px. Ecco un esempio:

Questo testo è troppo grande per stare all'interno del <div>. Grazie alla proprietà overflow:auto, in questo caso puoi scorrere questo testo così da vederlo per intero. La barra di scorrimento appare automaticamente quando il contenuto eccede le dimensioni del contenitore (che in questo caso è il <div> con lo sfondo blu), consentendo una navigazione più agevole e garantendo che tutte le informazioni siano accessibili lo stesso all'interno della pagina. Questa soluzione è particolarmente utile per contenuti dinamici o quando si vuole preservare uno stile ordinato e pulito. Potrai scoprire tutti i diversi valori di overflow all'interno di questa lezione. Questa proprietà accetta valori come visibile, hidden e scroll. In generale, la proprietà overflow è molto usata nel CSS.

Ora non sappiamo più come allungare questo testo, quindi continua pure la lezione 😉

I valori di overflow

La proprietà overflow accetta i seguenti valori:

  • visible - Valore di default
  • hidden
  • scroll
  • auto

Vediamoli in dettaglio.

La proprietà overflow:visible

Il valore visible di overflow è il valore di default. Quindi, se overflow non viene specificato, verrà impostato automaticamente il valore visible. Il contenuto che eccede le dimensioni del contenitore verrà mostrato al di fuori dei suoi bordi. Non viene applicato alcun taglio o scorrimento.

Lorem ipsum odor amet, consectetuer adipiscing elit. Venenatis ipsum metus pretium suspendisse donec ipsum. Praesent morbi vestibulum malesuada nunc volutpat.

<div> <!-- CONTENUTO --> </div>

<style>
div {
  overflow: visible;
  padding: 10px;
  border: 2px solid grey;
}
</style>

In questo caso, è importante notare che il contenuto che esce al di fuori del contenitore non avrà effetto sul resto del contenuto della pagina. Ad esempio, se dopo il <div> che contiene il testo c'è un'immagine, non verrà spostata se il testo esce fuori dal <div>. Semplicemente, il testo sarà sopra l'immagine.

La proprietà overflow:hidden

Nel caso di overflow:hidden, il contenuto che eccede le dimensioni del contenitore viene tagliato e nascosto. Non è possibile scorrere per visualizzarlo.

Lorem ipsum odor amet, consectetuer adipiscing elit. Venenatis ipsum metus pretium suspendisse donec ipsum. Praesent morbi vestibulum malesuada nunc volutpat.

<div> <!-- CONTENUTO --> </div>

<style>
div {
  overflow: hidden;
  padding: 10px;
  border: 2px solid grey;
}
</style>

Puoi usare hidden per creare elementi con dimensioni fisse e per prevenire la comparsa di barre di scorrimento indesiderate. Tuttavia, tieni conto che nascondere il contenuto agli utenti può essere molto fastidioso. Ad esempio, può essere che un utente abbia impostato una dimensione del testo più grande del normale, e non può leggere il contenuto.

La proprietà overflow:scroll

Utilizzando overflow:scroll, viene sempre mostrata una barra di scorrimento, sia verticale che orizzontale, anche se il contenuto non eccede le dimensioni del contenitore.

Lorem ipsum odor amet, consectetuer adipiscing elit. Venenatis ipsum metus pretium suspendisse donec ipsum. Praesent morbi vestibulum malesuada nunc volutpat.

<div> <!-- CONTENUTO --> </div>

<style>
div {
  overflow: scroll;
  padding: 10px;
  border: 2px solid grey;
}
</style>

Nota: non tutti i browser aggiungono entrambe le barre di scorrimento se non sono necessarie. Il comportamento di overflow:scroll potrebbe essere simile a overflow:auto.

La proprietà overflow:auto

Con la proprietà overflow:auto, viene mostrata una barra di scorrimento solo quando il contenuto eccede le dimensioni del contenitore. È il valore più comunemente usato.

Lorem ipsum odor amet, consectetuer adipiscing elit. Venenatis ipsum metus pretium suspendisse donec ipsum. Praesent morbi vestibulum malesuada nunc volutpat.

<div> <!-- CONTENUTO --> </div>

<style>
div {
  overflow: auto;
  padding: 10px;
  border: 2px solid grey;
}
</style>

Le proprietà overflow-x e overflow-y

Le proprietà overflow-x e overflow-y sono varianti della proprietà overflow che permettono di controllare separatamente il comportamento di scorrimento orizzontale e verticale all'interno di un elemento.

  • La proprietà overflow-x controlla il comportamento del contenuto che eccede la larghezza (width) del contenitore, ovvero lungo l'asse orizzontale.
  • La proprietà overflow-y controlla il comportamento del contenuto che eccede l'altezza (height) del contenitore, ovvero lungo l'asse verticale.

Sia overflow-x che overflow-y accettano gli stessi valori di overflow.

Puoi scegliere separatamente l'overflow verticale e orizzontale:

<div> <!-- CONTENUTO --> </div>

<style>
div {
  overflow-x: auto;
  overflow-y: hidden;
  padding: 10px;
  border: 2px solid grey;
}
</style>

Prova!Completa gli spazi vuoti con il testo appropriato.
/* Fai in modo che appaia la barra di scorrimento nel <div> solo se necessario */
div {
  : ;
  height: 100px;
  width: 100px;
}

Prova!Scegli l'opzione corretta tra quelle elencate.
/* Nascondi eventuali barre di scorrimento nel <div> */
div {
  _______________;
  height: 100px;
  width: 100px;
}