2010-08-26 10 views

risposta

18

Depends. Se hai bisogno che lo spazio sia lasciato vuoto, cioè lo spazio non sarà occupato da altri elementi sotto o intorno ad esso, avrai bisogno di visibility: hidden. Altrimenti, usa display: none, che permetterà ad altri elementi di spostarsi nella posizione dell'elemento.

Non c'è motivo di utilizzare entrambi.

6

Visibilità: nascosto nasconde l'elemento ma occupa ancora spazio nel layout. Display: nessuno lo rimuove completamente.

Nel tuo caso, vorrei usare display: none

+1

non v'è alcuna esposizione: nascosto, c'è visibility: hidden :) – Sotiris

+0

Questo è ciò che ho per la digitazione prima caffè! Grazie per la cattura, ho aggiornato il mio post. :) – Chuck

6

Se il contenuto nascosto deve essere accessibile — a quelli con gli screen reader, ad esempio — allora non si dovrebbe usare display: none o visibility: hidden, in quanto entrambi possono potenzialmente nascondere contenuto degli screen reader. Invece, dovresti usare un approccio più accessibile, come spostare il contenuto fuori dallo schermo con un margine negativo. Vedere i seguenti link per ulteriori informazioni:

456 Berea Street: Hiding with CSS: Problems and solutions
WebAIM Blog: Hiding content for screen readers

+1

Solo curioso, ma perché esattamente vorresti nascondere il contenuto ma è ancora accessibile agli screen reader? Se è nascosto, è perché attualmente non lo voglio mostrare. – Maverick

+1

@ MrN00b Si potrebbe nascondere il contenuto per motivi estetici, ad esempio sezioni pieghevoli che l'utente può nascondere o rivelare. – Mike