Properti clear
Ketika menggunakan properti float, dan menginginkan elemen berikutnya di bawah (bukan di kanan atau kiri), maka harus menggunakan properti clear.
Properti clear dapat menentukan apa yang harus terjadi dengan elemen yang berada di sebelah elemen yang mengapung.
Properti clear dapat memiliki salah satu dari nilai berikut:
none– Elemen tidak didorong di bawah elemen mengapung kiri atau kanan. Ini nilai default.left– Elemen didorong di bawah elemen mengapung kiri.right– Elemen didorong di bawah elemen mengapung kanan.both– Elemen didorong di bawah elemen mengapung kiri dan kanan.inherit– Elemen mewarisi nilai dari induknya.
Contoh
Pada contoh dibawah ini, elemen <div2> akan didorong di bawah kiri elemen <div1> :
<!DOCTYPE html>
<html>
<head>
<style>
.div1 {
float: left;
padding: 10px;
border: 3px solid #73AD21;
}
.div2 {
padding: 10px;
border: 3px solid red;
}
.div3 {
float: left;
padding: 10px;
border: 3px solid #73AD21;
}
.div4 {
padding: 10px;
border: 3px solid red;
clear: left;
}
</style>
</head>
<body>
<h2>Tanpa properti clear</h2>
<div class="div1">div1</div>
<div class="div2">div2 - Perhatikan bahwa div2 berada setelah div1 dalam kode HTML. Namun, karena div1 mengapung ke kiri, teks di div2 mengalir di sekitar div1.</div>
<br><br>
<h2>Dengan properti clear</h2>
<div class="div3">div3</div>
<div class="div4">div4 - Di sini, dengan menggunakan properti clear: left, memindahkan div4 ke bawah div3. Nilai left menghapus elemen melayang ke kiri.</div>
</body></html>
Penggunaan clearfix
Jika elemen mengambang lebih tinggi dari elemen yang memuatnya, ia akan ditempatkan keluar dari wadahnya. Penggunaan clearfix dapat menyelesaikan masalah ini:
Contoh
<!DOCTYPE html>
<html>
<head>
<style>
div {
border: 3px solid #4CAF50;
padding: 5px;
}
.img1 {
float: right;
}
.img2 {
float: right;
}
.clearfix {
overflow: auto;
}
</style>
</head>
<body>
<h2>Tanpa clearfix</h2>
<p>Gambar ini mengapung ke kanan. Gambar ini juga lebih tinggi dari elemen yang menjadi wadahnya, sehingga meluap di luar wadahnya.</p>
<div>
<img class="img1" src="pineapple.jpeg" alt="Nanas" width="170" height="170">
Lorem ipsum dolor sit amet, consectetur adipiscing elite. Phasellus imperdiet...
</div>
<h2 style="clear:right">Dengan clearfix</h2>
<p>Kita dapat memperbaikinya dengan menambahkan class clearfix dengan overflow: auto ke elemen yang menjadi wadah.</p>
<div class="clearfix">
<img class="img2" src="pineapple.jpeg" alt="Nanas" width="170" height="170">
Lorem ipsum dolor sit amet, consectetur adipiscing elite. Phasellus imperdiet...
</div>
</body></html>
Contoh
<!DOCTYPE html>
<html>
<head>
<style>
div {
border: 3px solid #4CAF50;
padding: 5px;
}
.img1 {
float: right;
}
.img2 {
float: right;
}
.clearfix::after {
content: "";
clear: both;
display: table;
}
</style>
</head>
<body>
<h2>Tanpa clearfix</h2>
<p>Gambar ini mengapung ke kanan. Gambar ini juga lebih tinggi dari elemen yang menjadi wadahnya, sehingga meluap di luar wadahnya.</p>
<div>
<img class="img1" src="pineapple.jpeg" alt="Nanas" width="170" height="170">
Lorem ipsum dolor sit amet, consectetur adipiscing elite. Phasellus imperdiet...
</div>
<h2 style="clear:right">Dengan clearfix hack</h2>
<p>Tambahkan clearfix hack ke elemen wadah, untuk memperbaiki masalah ini.</p>
<div class="clearfix">
<img class="img2" src="pineapple.jpeg" alt="Nanas" width="170" height="170">
Lorem ipsum dolor sit amet, consectetur adipiscing elite. Phasellus imperdiet...
</div>
</body></html>
Tutorial sebelumnya : Properti Float CSS
Tutorial setelahnya : Contoh Penggunaan Properti Float Dengan CSS
Semua Tutorial CSS : Tutorial CSS