2013-12-10 14 views
5

sto provando con il seguente stile:Come specificare proprietà CSS max-height per dimensioni dello schermo

.scrollDiv { 
    height:auto; 
    max-height:100%; 
    overflow:auto; 
} 

la mia richiesta è:

  1. max-height del div è uguale a l'altezza dello schermo
  2. Se il contenuto del div supera la dimensione dello schermo, le barre di scorrimento dovrebbero essere div.
+0

In realtà sto usando questo div in una finestra popup. –

+0

controlla la mia risposta vedi se ottieni quello che sto cercando di dire –

+0

Perché non usare la barra di scorrimento che normalmente compare nella finestra? – codefactor

risposta

4

La barra di scorrimento viene visualizzata solo quando il contenuto è overflown.

Se max-height del div interno è uguale all'altezza del contenitore, la barra di scorrimento non verrà mai visualizzata. se vuoi vedere la barra di scorrimento, usa questo.

.scrollDiv { 
    height:auto; 
    max-height:150%; 
    overflow:auto; 
} 
+0

Non sono sicuro se questa risposta è pertinente, ma volevo sottolineare che è facile creare la barra di scorrimento visibile anche se nulla oltre scorre. overflow: scroll; – codefactor

+1

no intendevo dire se vuole la barra di scorrimento 'quando' il contenuto è sorvolato, nel suo caso il contenuto non si eccoverà mai e qual è il punto di una barra di scorrimento se il contenuto non è sorvolato? –

12

È possibile utilizzare $(window).height() per impostare il max-height per l'altezza dello schermo:

$('.scrollDiv').css('max-height', $(window).height()); 
17

unità Usa CSS viewport per questo.

Esempio:

.scrollDiv { 
    max-height: 100vh; 
    overflow: auto; 
} 

Maggiori informazioni: https://www.w3schools.com/cssref/css_units.asp

+0

Curioso di sapere come si è qualificato per un downvote. –

+0

Questo è quello che ha funzionato per me. Dovevo impostare l'altezza massima su 77vh per il mio caso. – naveed

Problemi correlati