Foros del Web » Creando para Internet » CSS »

altura 100%

Estas en el tema de altura 100% en el foro de CSS en Foros del Web. Hola bueno antes que todo el mundo me critique por que el tema ya esta bueno este es diferente lo que pasa es que ya ...
  #1 (permalink)  
Antiguo 01/02/2012, 23:07
Avatar de xlos_mas_pro  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago
Mensajes: 359
Antigüedad: 13 años, 6 meses
Puntos: 11
Pregunta altura 100%

Hola bueno antes que todo el mundo me critique por que el tema ya esta bueno este es diferente lo que pasa es que ya me e cansado de buscar como puedo tener dos columnas con altura 100% y que al mismo tiempo sean auto y lo otro es que tengan un footer o pie de pagina que siempre permanezca abajo no abajo de las columnas si no de todo tiene que estar apegado al borde inferior de la pantalla.

Pido ayuda ya que todo el material que encuentro nunca puedo hacer que las dos cosas funcionen simpre o tengo las dos columnas con altura 100% pero el pie de pagina se levanta o es al revez por favor pido que alguien me muestre el codigo con las dos cosas funcionando por favor me seria de gran ayuda
  #2 (permalink)  
Antiguo 02/02/2012, 00:58
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 4 meses
Puntos: 1567
Respuesta: altura 100%

Y si, es un tema viejo. Y la forma en que lo planteas merece algunas precisiones.

las columnas al 100%, pero que ademas sean auto?
supongo que lo que querés con auto es que si las columnas tiene más contenido y generan scroll en el body, se extiendan en lo alto con el mismo, eso haría que el pie (que obviamente va a estar debajo de las columnas) no apareciese al cargarse la página. Pero que sucedería si tus colunas no tiene contenido suficiente para generar scroll? lo lógico sería ques estas columnas NO tengan el 100%, sino que tengan el 100% menos el alto que tiene el pie. Con lo cual el pie estaría visible al cargar la página. Y a todo esto, tu pie, tiene un contenido fijo, o también puede variar?
Bueno, hay una solución que contempla todas esas posibilidades.

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>columnas de igual alto</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  
  7. <style type="text/css">
  8. /*<![CDATA[*/
  9. html, body{
  10. height: 100%;
  11. }
  12.  
  13. body,div {
  14. margin: 0; border; none; padding: 0;
  15. }
  16.  
  17. div.tabla{
  18. display: table;
  19. height: 90%;
  20. border-collapse:collapse;
  21. margin: 0 auto;
  22. }
  23.  
  24. div.fila {
  25. display: table-row;
  26. }
  27.  
  28. div.tabla_pie {
  29. display: table;
  30. width: 100%;
  31. height: 10%;
  32. }
  33.  
  34. .colizquierda{
  35. width: 300px;
  36. height: 100%;
  37. background-color:#478B14;
  38. display: table-cell;
  39. }
  40. .colderecha{
  41. width: 300px;
  42. height: 100%;
  43. background-color:#9F009F;
  44. display: table-cell;
  45.  
  46. }
  47. .pie{
  48. width: 100%;
  49. background-color:#808040;
  50. display: table-cell;
  51. }
  52.  
  53. /*]]>*/
  54. </head>
  55. <div class="tabla">
  56. <div class="fila">
  57. <div class="colizquierda">
  58.    
  59. <p>vvv</p>
  60. <p>vvv</p> 
  61. <p>vvv</p> 
  62. <p>vvv</p> 
  63. <p>vvv</p> 
  64. <p>vvv</p> 
  65. <p>vvv</p> 
  66. <p>vvv</p> 
  67. <p>vvv</p> 
  68. <p>vvv</p> 
  69. <p>vvv</p>
  70. <p>vvv</p> 
  71. <p>vvv</p> 
  72. <p>vvv</p> 
  73. <p>vvv</p> 
  74. <p>vvv</p> 
  75. <p>vvv</p> 
  76. <p>vvv</p> 
  77. <p>vvv</p> 
  78. <p>vvv</p> 
  79. <p>vvv</p>
  80. <p>vvv</p> 
  81. <p>vvv</p> 
  82. <p>vvv</p> 
  83. <p>vvv</p> 
  84. <p>vvv</p> 
  85. <p>vvv</p> 
  86. <p>vvv</p> 
  87. <p>vvv</p> 
  88. <p>vvv</p> 
  89.  
  90. </div>
  91. <div class="colderecha">s</div>
  92.  
  93. </div>
  94. </div>
  95.  
  96.  
  97. <div class="tabla_pie">
  98.    
  99. <div class="pie">
  100. <p>pie</p>     
  101. <p>pie</p> 
  102. <p>pie</p> 
  103. <p>pie</p> 
  104. </div>
  105.    
  106. </div>
  107.  
  108. </body>
  109. </html>

la idea es usar las propiedades display: table, table-row y table-cell, y que la suma de la div que contiene las columnas y la que contiene el pie, sumen el 100%.
Primero siempre fijate que porcentaje necesita el pie (tabla.pie)para ser visible en el caso de que las columnas no tengan suficiente contenido, y el resto se lo das al div.tabla.
Después proba de quitarle o agregarle contenido a las columnas
funciona en ie8+ y en el resto, en todos
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:19.