2013-02-07 16 views
5

mam div obszar takiego:Css problem wysokość div przy użyciu pacy

<div class="con"> 
    <div class="container"></div> 
    <div class="sidebar"></div> 
</div> 

i CSS:

.con{ 
    width:100%;  
} 
.con .container{ 
    width:70%; 
    min-height:500px; 
    float:left; 
    background:#f00; 

} 
.con .sidebar{ 
    width:30%; 
    min-height:500px; 
    float:right; 
    background:#ccc; 

} 

W container i sidebar Wysokości klasy są dynamiczne. Gdy jedna z tych wysokości klas wzrasta, klasa con również musi wzrosnąć. Ale moim problemem jest klasa con wysokość jest zawsze 0, nie mogę dać klasie con statycznej wysokości.

Odpowiedz

6

Dodaj overflow: auto; do .con:

.con { 
    width: 100%; 
    overflow: auto;  
} 
+0

To działa doskonale dzięki. – Wazan

+0

Nie ma za co. Ten problem doprowadzał mnie do szału raz na jakiś czas, zbyt ... – Taig

+0

Dziękuję ALOT, przepełnienie: auto; jest rozwiązaniem ... – Wazan

0

Nie jestem pewien, dlaczego tak ważne, dlaczego .con nie ma wysokości, ale jest to dość niesławny problem. Dodaj overflow: hidden do .con. Jeśli to nie zadziała, po tagu umieść <br style="clear: both;">.

+0

jest to z powodu wartości zmiennoprzecinkowej, jeśli ustawimy zmiennoprzecinkowe na element podrzędny, a nie nadrzędny .. tak się dzieje. Przepełnienie ukryte nie jest rzeczą do zrobienia, jednak można to zrobić za pomocą polecenia 'wyczyść: oba lub przepełnij –

+0

@NullPointer' przepełnienie: ukryta sztuczka działa praktycznie za każdym razem, chyba że faktycznie kończy się odcięciem treści –

1

użytku jasnego klasie

<div class="con"> 
    <div class="container"></div> 
    <div class="sidebar"></div> 
    <div class="clear"></div> 
</div> 

.clear 
{ 
    clear:both; 
} 
0

spróbować

.con{ 
    width:auto; 
    overflow: auto; 
    margin:0 auto;  
} 
0

można używać jak ..

.con{display: table;} 
+0

Możesz poprawić swoją odpowiedź, dodając wyjaśnienie, dlaczego to zadziała, a nawet rzeczywisty przykładowy kod Twoja sugestia. – dakab

Powiązane problemy