Vlastnosť float a rodič bez textu v CSS
Povedzme, že teraz máme div s triedou parent
bez textu, ale s dvoma blokovými potomkami
s triedou child:
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
</div>
.parent {
width: 500px;
border: 1px solid red;
text-align: justify;
}
.child {
width: 200px;
height: 100px;
border: 1px solid green;
}
:
Urobme bloky-potomkov plávajúcimi naľavo a pozrime sa, čo sa stane:
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
</div>
.parent {
width: 500px;
border: 1px solid red;
text-align: justify;
}
.child {
float: left;
width: 200px;
height: 100px;
border: 1px solid green;
}
:
Ako vidíme, bloky-potomkovia sa zoradili do radu, avšak výška rodiča zmizla a naše bloky z neho prečahujú dolu.
Toto správanie už poznáme. Na vyriešenie problému by sme mali použiť clearfix. Urobme to:
<div class="parent">
<div class="child">1</div>
<div class="child">2</div>
<div class="clearfix"></div>
</div>
.parent {
width: 500px;
border: 1px solid red;
text-align: justify;
}
.child {
float: left;
width: 200px;
height: 100px;
border: 1px solid green;
}
.clearfix {
clear: both;
}
: