2012-06-30 17 views
5

Mam zagnieżdżona div s, przy czym większość jest float:left; display:block;, jak zrobić:Jak utworzyć wysokość div, zależy od zawartości w środku?

<div class="container" style="display:block;"> 
    <div style="float:left; display:block; height:100px;"> 
    <div style="float:left; display:block; height:100px;"> 
</div> 

Chcę pojemnik div aby uzyskać większe bez ustawiania wysokości. W tej chwili jest to płaska linia.
W jaki sposób skonfigurować wewnętrzne s, tak aby pojemnik miał wysokość?

TL; DR: Obecnie można zobaczyć 2 wewnątrz div jest w porządku, a pojemnik jest płaski div (bez wysokość).
Jak mogę podać mu wysokość?

Odpowiedz

2

Dodaj overflow:hidden do tego DIV.

+0

Pozdrawiam koleś działa świetnie! – Emmett

+0

duplikat http://stackoverflow.com/questions/804926/make-outer-div-be-automaticly-the-same-height-as-its-floating-content –

+0

Możesz również unieść kontener w lewo lub dodać wyczyszczone element na końcu (choć zalecam użycie rozwiązania clearfix) –

9

Masz dwie opcje:

<div class="container" style="overflow:hidden"> 
    <div style="float:left; height:100px;"> 
    <div style="float:left; height:100px;"> 
</div> 

lub

<div class="container"> 
    <div style="float:left; height:100px;"> 
    <div style="float:left; height:100px;"> 
    <div style="clear:left"> 
</div> 

Zauważ, że overflow:hidden elementy będą zawinięcia pływających elementów wewnętrznych. Alternatywnie możesz użyć elementu, aby usunąć float, co spowoduje, że otaczający element zawinie treść.

Kolejna porada: Nie musisz podawać, że divy to display:block. W HTML istnieją zasadniczo 2 typy elementów: block i inline. Div są domyślnie block.

+0

Zanotuj, że wartość dla przelewu atrybut może być dowolną wartością, która ma zastosowanie (auto, hidden, scroll, visible). –

+1

Również każdy element pływający staje się blokiem. – bfavaretto

+0

Przepełnienie: ukryty, działa dla mnie .. Wielkie dzięki –

Powiązane problemy