CSS float īpašība un vecāks elements bez teksta
Pieņemsim, ka mums ir div ar klasi parent
bez teksta, bet ar diviem bloka-pēctečiem
ar klasi 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;
}
:
Padarīsim bloka-pēctečus peldošus pa kreisi un paskatīsimies, kas notiks:
<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;
}
:
Kā mēs redzam, bloka-pēcteči sarindojās rindā, tomēr vecākā elementa augstums pazuda un mūsu bloki izkāpa ārā no tā apakšā.
Šāda uzvedība mums jau ir zināma. Lai atrisinātu problēmu, vajadzētu izmantot clearfix. Izdarīsim 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;
}
: