Float-ominaisuus ja tekstiton vanhempi CSS:ssä

Oletetaan, että meillä on div-luokan parent ilman tekstiä, mutta kahdella lapsilohkolla luokassa child:

html<div class="parent">
  <div class="child">1</div>
  <div class="child">2</div>
</div>
css.parent {
  width: 500px;
  border: 1px solid red;
  text-align: justify;
}
.child {
  width: 200px;
  height: 100px;
  border: 1px solid green;
}

Результат:

Tehdään lapsilohkoista kelluvia vasemmalle ja katsotaan, mitä tapahtuu:

html<div class="parent">
  <div class="child">1</div>
  <div class="child">2</div>
</div>
css.parent {
  width: 500px;
  border: 1px solid red;
  text-align: justify;
}
.child {
  float: left;
  width: 200px;
  height: 100px;
  border: 1px solid green;
}

Результат:

Kuten näemme, lapsilohkot asettuivat riviin, kuitenkin vanhemman korkeus katosi ja meidän lohkomme työntyvät sen alapuolelle.

Tämä käyttäytyminen on meille jo tiedossa. Ongelman ratkaisemiseksi tulisi käyttää clearfix-menetelmää. Tehdään niin:

html<div class="parent">
  <div class="child">1</div>
  <div class="child">2</div>
  <div class="clearfix"></div>
</div>
css.parent {
  width: 500px;
  border: 1px solid red;
  text-align: justify;
}
.child {
  float: left;
  width: 200px;
  height: 100px;
  border: 1px solid green;
}

.clearfix {
  clear: both;
}

Результат:

Задание 1

Toista sivu tämän esimerkin mukaisesti:

Задание 2

Toista sivu tämän esimerkin mukaisesti: