2012-06-18 32 views
49

Ecco il mio violino: http://jsfiddle.net/e6kCH/15/altezza Textarea: 100%

Può sembrare stupido, ma non riesco a trovare un modo per rendere l'altezza dell'area di testo pari al 100%. Funziona per la larghezza, ma non per l'altezza.

voglio l'area di testo per ridimensionare a seconda della dimensione della finestra ... come funziona nel mio violino per la larghezza ...

Tutte le idee?

risposta

60

altezza di un elemento è relativo al suo genitore. Così, se si vuole fare espandere il vostro elemento in tutta l'altezza della finestra, è necessario applicare il CSS per html e body così (gli elementi padre):

html, body { 
    height: 100%; 
} 

#textbox { 
    width: 100%; 
    height: 100%; 
} 

soluzione alternativa con CSS3 : Se è possibile utilizzare CSS3, è possibile utilizzare Viewport percentage units e scalare direttamente la vostra casella di testo per il 100% di altezza (e larghezza 100%) della finestra (jsfiddle here)

body { 
    margin: 0; 
} 
#textbox { 
    width: 100vw; 
    height: 100vh; 
} 
2

È possibile farlo:

#textbox { 
    position:fixed; 
    top:0; 
    left:0; 
    right:0; 
    bottom:0; 
} 
+14

mi piacerebbe scoraggiare l'uso di 'posizione: fixed'. Rende il layout più complicato e non è esattamente necessario qui. – jsalonen

+3

In effetti dipende dall'intero layout. Ma sono d'accordo: se è sufficiente per il problema esatto, la soluzione è più elegante. Lascio il mio come riferimento (almeno per il tuo commento) e come alternativa al caso in cui il tuo non è abbastanza. –