2012-06-18 20 views
49

Aquí está mi violín: http://jsfiddle.net/e6kCH/15/altura Textarea: 100%

Puede sonar estúpido, pero no puedo encontrar una manera de hacer que la altura área de texto igual al 100%. Funciona para el ancho, pero no para la altura.

Quiero el área de texto para cambiar el tamaño en función del tamaño de la ventana ... como funciona en mi violín para el ancho ...

¿Alguna idea?

Respuesta

60

altura de un elemento es relativa a su matriz. Por lo tanto, si usted quiere hacer expandir su elemento en toda la altura de la vista, es necesario aplicar el CSS para html y body también (los elementos padre):

html, body { 
    height: 100%; 
} 

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

solución alternativa con CSS3 : Si puede usar CSS3, puede utilizar Viewport percentage units y escalar directamente el cuadro de texto a la altura del 100% (100% y anchura) de la ventana gráfica (jsfiddle here)

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

se puede hacer eso:

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

me desalentar el uso de 'posición: fixed'. Hace que el diseño sea más complicado y no se necesita exactamente aquí. – jsalonen

+3

De hecho, depende de todo el diseño. Pero estoy de acuerdo: si es suficiente para el problema exacto, su solución es más elegante. Dejo la mía como referencia (al menos para su comentario) y como alternativa para el caso donde el suyo no es suficiente. –