Foros del Web » Creando para Internet » CSS »

[SOLUCIONADO] Problema extraño con colocación de cajas

Estas en el tema de Problema extraño con colocación de cajas en el foro de CSS en Foros del Web. Buenas noches. Os he puesto un código ya preparado abajo para que veáis un problema que no sé resolver o no entiendo. Se trata de ...
  #1 (permalink)  
Antiguo 14/01/2014, 16:14
 
Fecha de Ingreso: noviembre-2005
Mensajes: 889
Antigüedad: 18 años, 5 meses
Puntos: 8
Problema extraño con colocación de cajas

Buenas noches.

Os he puesto un código ya preparado abajo para que veáis un problema que no sé resolver o no entiendo.

Se trata de colocar un footer con una serie de elementos en cajas con a la izquierda.

El caso es que todo el footer debe tener un fondo longitudinal con el tamaño de toda la ventana del navegador.

El problema es que por alguna razón al darle float:left a las cajas en ese div, desaparece el fondo.

En fin, lo véis en el ejemplo, donde aparece esta sencilla estructura:

Código:
<html>
</head>
<body>
  <div id="all">
    <p>parrafo</p>
  </div><!-- back -->
  <div id="footer-outer">
    <div id="footer-inner">
      <div id="bottom">
        <div class="box box1">
    <p>parrafo</p>
        </div>
        <div class="box box2"> 
    <p>parrafo</p>
        </div>        
      </div> 
    </div>
  </div>  
</body>
</html>
El div en all aparece centrado y con fondo en blanco.

El div footer-outer es el que tiene el fondo rojo en todo el ancho de la ventana del navegador.

El div footer-inner está centrado dentro de footer-outer y alberga los divs box.

Los divs box tienen un fondo azul y verde y van están colocados como cajas flotantes a la izquierda.

Esto es el resultado de intentar lograr el efecto de fondo ancho para el footer (footer-outer) después de ir desgranando toda una plantilla que lo tenía hasta quedarme con el esqueleto que véis.

Ahora, el problema es que no me gusta dejar cosas porque sí ni sin saber para qué son.

Véis ese div llamado "bottom", que alberga los dos box.

Tiene asignada la propiedad y valor overflow:hidden respectivamente.

Pues bien. Si lo eliminas o eliminas la regla con overflow:hidden, el fondo rojo del footer-outer desaparece.

No sé por qué. Tampoco sé qué puede significar overflow:hidden en este contexto y por qué hace aparecer el fondo.

Por supuesto, sé perfectamente para qué es hidden en overflow, pero que yo sepa aquí no hay ningún elemento saliente de la caja que haya que ocultar.

Considero ese elemento (bottom) superfluo. No sé qué hace ahí y querría quitarlo, pero si lo elimino el fondo rojo del footer-outer desaparece. Lo mismo con su propiedad.

¿Me podéis echar un vistazo al tema?

Me gustaría discutir sobre este asunto.

Os lo dejo aquí todo preparado para poner en un html.

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
html,
body,
footer {
margin: 0;
padding: 0
}
body {
position: relative;
margin: 0;
padding: 0;
width: 100%
}
#all {
margin: 0 auto;
width: 996px;
padding: 0;
}
#bottom {
overflow: hidden
}
.box {
float: left
}
.box1 {
width: 754px;
background: #0066ff
}
.box2 {
width: 242px;
background: #006600
}
#footer-inner {
max-width: 1025px;
margin: 0 auto;
padding: 0
}
#footer-outer {
background: #ff0000
}    
</style>
</head>
<body>
  <div id="all">
    <p>este es un texto de prueba para probar si esto funciona este es un texto de prueba para probar si esto funciona este es un texto de prueba para probar si esto funcionaeste es un texto de prueba para probar si esto funcionaeste es un texto de prueba para probar si esto funciona.</p>
  </div><!-- back -->
  <div id="footer-outer">
    <div id="footer-inner">
      <div id="bottom">
        <div class="box box1">
          <p>este es un texto de prueba para probar si esto funciona este es un texto de prueba para probar si esto funciona este es un texto de prueba para probar si esto funcionaeste es un texto de prueba para probar si esto funcionaeste es un texto de prueba para probar si esto funciona.</p>
        </div>
        <div class="box box2"> 
          <p>este es un texto de prueba para probar si esto funciona este es un texto de prueba para probar si esto funciona este es un texto de prueba para probar si esto funcionaeste es un texto de prueba para probar si esto funcionaeste es un texto de prueba para probar si esto funciona.</p>
        </div>        
      </div> 
    </div>
  </div>  
</body>
</html>
  #2 (permalink)  
Antiguo 14/01/2014, 16:53
Avatar de hcrisel  
Fecha de Ingreso: diciembre-2013
Ubicación: Gualeguaychú- Entre Rios
Mensajes: 58
Antigüedad: 10 años, 4 meses
Puntos: 4
Respuesta: Problema extraño con colocación de cajas

Hola mi viejo... muy respetuosamente... creo que te has embrollado solo.

Te invito a que veas acá en mi post como manejo las cajas en un modo muy simple

http://www.forosdelweb.com/f53/lindo-scroll-imagenes-pero-1087998/

A veces cuando buscamos algo perdemos el hilo y comenzamos indiscriminadamente a eliminar y cambiar sobre otros trabajos que propone la red. (creo que tu problema esta ahí)

Presta atención a la sección <Select>... </Select>


Por eso te invito a que veas como tratar los div en un modo un poco más claro. Te deseo lo mejor!!
__________________
En lo que pueda ayudarte solo avisame. Todos para uno y uno para todos (sin abusar de los demás).
  #3 (permalink)  
Antiguo 14/01/2014, 19:43
Avatar de C2am  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 3 meses
Puntos: 306
Respuesta: Problema extraño con colocación de cajas

Bueno, eso tiene que ver con esto:
http://librosweb.es/css_avanzado/cap...ar_floats.html
Limpiar los float.
Existen varias maneras, lee el articulo del manual y obtendrás tu respuesta.
Saludos
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--

Etiquetas: background, cajas, divs, extraño, html, tamaño
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 21:27.