back to top

Che differenza c’è tra display:none e visibility:hidden?

Nella lezione precedente abbiamo visto cosa sono e come funzionano le proprietà del CSS visibility e display ed abbiamo avuto modo di capire che entrambe agiscono sulla visualizzazione (o meno) di un dato elemento della pagina. Diveramente da quello che si potrebbe pensare, tuttavia, le due proprietà non hanno lo stesso effetto…

Usare display:none o visibility:hidden?

In entrambi i casi l’elemento non verrà mostrato. Entrambe le direttive CSS, infatti, impediscono la visualizzazione dell’elemento cui sono applicate. Tra le due, tuttavia, esiste una differenza di non secondaria importanza:

  • con visibility:hidden resterà uno spazio vuoto in corrispondenza dell’elemento (che si comporta come fosse "trasparente");
  • con display:none, viceversa, non verrà mostrato nessuno spazio vuoto in corrispondenza dell’elemento.

In altre parole: se vogliamo "cancellare" virtualmente un elemento dalla pagina useremo display:none, se invece vogliamo solo renderlo invisibile (mantenendo, tuttavia, inalterato il suo ingombro) utilizzeremo visibility:hidden.

Pubblicitร 
Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).