Quiero que el exterior div
, que es negro, envuelva su div
s flotando dentro de él. No quiero usar style='height: 200px
en el div
con la outerdiv
identificación ya que quiero que sea automáticamente la altura de su contenido (por ejemplo, los flotantes div
).
<div id='outerdiv' style='border: 1px solid black;background-color: black;'>
<div style='width=300px;border: red 1px dashed;float: left;'>
<p>xxxxxxxxxxxxxxxxxxxxxxxxxxxxx</p>
</div>
<div style='width=300px;border: red 1px dashed;float: right;'>
<p>zzzzzzzzzzzzzzzzzzzzzzzzzzzzz</p>
</div>
¿Cómo lograrlo?
HTML/CSS
nunca ha sido una buena tecnología de interfaz de usuario, por lo que las cosas contrarias a la intuición son bastante comunes :)float
solución. Funciona muy bien con los demás fallos, especialmente cuando se combina con Twitter Bootstrap.En primer lugar, le recomiendo encarecidamente que haga su estilo CSS en un archivo CSS externo, en lugar de hacerlo en línea. Es mucho más fácil de mantener y puede ser más reutilizable usando clases.
Trabajando con la respuesta de Alex (y la corrección clara de Garret) de "agregar un elemento al final con claro: ambos", puede hacerlo así:
Esto funciona (pero como puede ver, CSS en línea no es tan bonito).
fuente
Es posible que desee probar los flotadores de cierre automático, como se detalla en http://www.sitepoint.com/simple-clearing-of-floats/
Así que quizás intente
overflow: auto
(normalmente funciona) ooverflow: hidden
, como dijo Alex.fuente
Sé que algunas personas me odiarán, pero he descubierto
display:table-cell
que puedo ayudar en estos casos.Es realmente más limpio.
fuente
En primer lugar, no use
width=300px
esa configuración de atributo para la etiqueta, no CSS, usewidth: 300px;
en su lugar.Sugeriría aplicar la
clearfix
técnica en el#outerdiv
. Clearfix es una solución general para borrar 2 divs flotantes, de modo que el div padre se expandirá para acomodar los 2 divs flotantes.A continuación, se muestra un ejemplo de su situación y lo que Clearfix hace para resolverla.
fuente
Utilice jQuery:
Establezca la altura del padre = la altura del desplazamiento del hijo.
fuente
Utilizar
clear: both;
¡Pasé más de una semana tratando de resolver esto!
fuente