Foros del Web » Creando para Internet » CSS »

Como definir un height dinamico

Estas en el tema de Como definir un height dinamico en el foro de CSS en Foros del Web. Buenas noches Chicos me pueden colaborar con la siguiente duda: Tengo un contenedor que contiene un par de contenedores uno al lado del otro. Los ...
  #1 (permalink)  
Antiguo 24/02/2012, 21:03
 
Fecha de Ingreso: noviembre-2010
Mensajes: 204
Antigüedad: 14 años
Puntos: 1
Como definir un height dinamico

Buenas noches

Chicos me pueden colaborar con la siguiente duda:

Tengo un contenedor que contiene un par de contenedores uno al lado del otro. Los contenedores internos varian de tamaño razon por la cual requiero que el contenedor principal crezca de forma dimanica en altura cuando los internos crezcan.

El problema es que tengo que marcar en el contenedor principal la propiedad height con un valor fijo ya que cuando lo pongo auto se desaparce.

El codigo que uso es el siguiente:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

<head>

<title></title>

<style type="text/css">

#contenedor
{
width: 986px;
margin-top: 5px; margin-right: 5px; margin-bottom: 5px; margin-left: 5px;
padding: 0;
height: 200px;
background: yellow;
}

.contiene1
{
float: left;
width: 400px;
margin-top: 5px; margin-right: 5px; margin-bottom: 5px; margin-left: 5px;
padding: 0;
height: auto;
background: blue;
}

.contiene2
{
float: left;
width: 300px;
margin-top: 5px; margin-right: 5px; margin-bottom: 5px; margin-left: 5px;
padding: 0;
height: auto;
background: red;
}

</style>

</head>

<body>

<div id="contenedor"><div class="contiene1">** ABC **</div><div class="contiene2">** DEF ** </div></div>


</body>
</html>

Gracias por su tiempo

Isabel
  #2 (permalink)  
Antiguo 25/02/2012, 00:54
Avatar de jhsilva  
Fecha de Ingreso: mayo-2009
Mensajes: 85
Antigüedad: 15 años, 6 meses
Puntos: 5
Respuesta: Como definir un height dinamico

Agrega al contenedor principal la propiedad:

display: inline-block;

Código CSS:
Ver original
  1. #contenedor
  2. {
  3. width: auto;
  4. margin-top: 5px; margin-right: 5px; margin-bottom: 5px; margin-left: 5px;
  5. height: auto;
  6. background: yellow;
  7. display: inline-block;
  8. }

Mediante el valor inline-block de la propiedad display de css permitirá renderizar el elemento padre de acuerdo a como crezcan sus hijos.


Saludos
__________________
Estudiante de Ingenieria Civil en Informática, soñador, apasionado, enamorado con RoR e Interesado en la gestión del software.
http://www.jhsilva.com
  #3 (permalink)  
Antiguo 25/02/2012, 01:11
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 8 meses
Puntos: 1146
Respuesta: Como definir un height dinamico

inline-block? nunca hubiera esperado esa respuesta a este problema, aunque no lo he probado supongo funcionara, pero lo recomendable es limpiar el float ya que es el problema real que tiene.

esto se realiza de dos formas posibles:
Opción 1.- aplicar overflow: hidden o auto al elemento padre (opción recomendada)
Código CSS:
Ver original
  1. #contenedor
  2. {
  3. width: 986px;
  4. margin-top: 5px; margin-right: 5px; margin-bottom: 5px; margin-left: 5px;
  5. padding: 0;
  6. height: 200px;
  7. background: yellow;
  8. overflow:hidden;
  9. }

Opción 2.- aplicar un div vació o algún elemento al final de tu contenido con la propiedad clear: (both, left, right)
Código HTML:
Ver original
  1. <div id="contenedor">
  2.    <div class="contiene1">** ABC **</div>
  3.    <div class="contiene2">** DEF ** </div>
  4.    <img src="spacer.gif" style="clear:both;" />
  5. </div>
  #4 (permalink)  
Antiguo 25/02/2012, 17:03
 
Fecha de Ingreso: noviembre-2010
Mensajes: 204
Antigüedad: 14 años
Puntos: 1
Respuesta: Como definir un height dinamico

Mil gracias por su tiempo y colaboracion

Logre solucionarlo agregando la linea display: inline-block; quedo perfecto, probe las otras opciones pero no me funciono, no tuvo ningun efecto.

Muchas gracias

Isabel
  #5 (permalink)  
Antiguo 25/02/2012, 18:28
Avatar de jhsilva  
Fecha de Ingreso: mayo-2009
Mensajes: 85
Antigüedad: 15 años, 6 meses
Puntos: 5
Respuesta: Como definir un height dinamico

Cita:
Iniciado por Ag666 Ver Mensaje
inline-block? nunca hubiera esperado esa respuesta a este problema, aunque no lo he probado supongo funcionara, pero lo recomendable es limpiar el float ya que es el problema real que tiene.

esto se realiza de dos formas posibles:
Opción 1.- aplicar overflow: hidden o auto al elemento padre (opción recomendada)
Código CSS:
Ver original
  1. #contenedor
  2. {
  3. width: 986px;
  4. margin-top: 5px; margin-right: 5px; margin-bottom: 5px; margin-left: 5px;
  5. padding: 0;
  6. height: 200px;
  7. background: yellow;
  8. overflow:hidden;
  9. }

Opción 2.- aplicar un div vació o algún elemento al final de tu contenido con la propiedad clear: (both, left, right)
Código HTML:
Ver original
  1. <div id="contenedor">
  2.    <div class="contiene1">** ABC **</div>
  3.    <div class="contiene2">** DEF ** </div>
  4.    <img src="spacer.gif" style="clear:both;" />
  5. </div>
Estimado podrìas complementar la opción para aclarar ello porfavor.

¿Que realiza clear:both? Lo he visto varias veces maquetando e infiero que es para limpiar el contenido , pero tecnicamente que se logra.

Saludos y atento
__________________
Estudiante de Ingenieria Civil en Informática, soñador, apasionado, enamorado con RoR e Interesado en la gestión del software.
http://www.jhsilva.com

Etiquetas: definir, dinamico, height, html, tamaño, fondo
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:45.