Guys follow ig mimin Follow Instagram

Belajar Frontend Part 6 - CSS Modern

CSS Modern: Flexbox dan Grid Layout

Selamat datang di artikel ke-6 tentang CSS! Dalam artikel ini, kita akan membahas dua teknik modern yang sering digunakan untuk layout halaman web, yaitu Flexbox dan Grid Layout. Kedua teknik ini memungkinkan kita untuk membuat layout responsif dan lebih fleksibel tanpa memerlukan banyak CSS tambahan.

---

#1. Flexbox: Layout Satu Dimensi

Flexbox (Flexible Box Layout) adalah sistem layout CSS yang dirancang untuk mendistribusikan ruang secara efisien di dalam kontainer, bahkan ketika ukuran elemen tidak diketahui atau dinamis. Flexbox berfokus pada layout satu dimensi, baik secara horizontal (row) maupun vertikal (column).

Untuk mulai menggunakan Flexbox, kamu perlu mendeklarasikan properti display: flex; pada kontainer, dan Flexbox akan mengatur elemen-elemen anak secara otomatis di dalamnya.

Contoh Dasar Flexbox


.container {

  display: flex;

}

.item {

  margin: 10px;

}

Pada contoh di atas, .container akan menampilkan elemen-elemen dengan kelas .item dalam satu baris (secara default), dengan jarak 10px di antara elemen-elemen tersebut.

Mengatur Arah Layout dengan Flexbox

Untuk mengubah arah layout, kita bisa menggunakan properti flex-direction. Nilai row adalah default, namun kamu juga bisa menggunakan column, row-reverse, atau column-reverse untuk merubah arah layout elemen-elemen dalam kontainer.


.container {

  display: flex;

  flex-direction: column; /* Elemen akan diatur secara vertikal */

}

Beberapa properti lain yang dapat kamu gunakan dengan Flexbox:

  • justify-content: Mengatur perataan elemen secara horizontal (untuk baris) atau vertikal (untuk kolom), seperti flex-start, center, space-between, dll.
  • align-items: Mengatur perataan elemen secara vertikal (untuk baris) atau horizontal (untuk kolom), seperti flex-start, center, stretch, dll.
  • align-self: Mengatur perataan elemen tunggal dalam kontainer Flexbox.
---

#2. Grid Layout: Layout Dua Dimensi

Grid Layout adalah sistem layout CSS yang memungkinkan kita untuk membuat desain halaman web dua dimensi, yang terdiri dari baris dan kolom. Grid Layout sangat berguna untuk layout yang lebih kompleks, di mana elemen perlu diposisikan dalam berbagai posisi di grid yang fleksibel.

Untuk menggunakan Grid Layout, kamu perlu mendeklarasikan properti display: grid; pada kontainer, dan kemudian tentukan baris dan kolom menggunakan grid-template-rows dan grid-template-columns.

Contoh Dasar Grid Layout


.container {

  display: grid;

  grid-template-columns: repeat(3, 1fr); /* Tiga kolom dengan lebar sama */

  grid-gap: 10px; /* Jarak antar elemen */

}

.item {

  background-color: #f0f0f0;

  padding: 20px;

}

Dalam contoh di atas, .container dibagi menjadi tiga kolom yang lebar masing-masingnya sama (1fr). grid-gap digunakan untuk memberi jarak antar elemen-elemen di dalam grid.

Menentukan Baris dan Kolom secara Lebih Lanjut

Kamu juga bisa menentukan jumlah baris dan kolom serta ukurannya secara lebih spesifik menggunakan properti grid-template-rows dan grid-template-columns.


.container {

  display: grid;

  grid-template-columns: 200px 1fr 200px; /* Kolom pertama dan ketiga 200px, kolom kedua fleksibel */

  grid-template-rows: auto; /* Baris otomatis sesuai konten */

}

Kamu juga dapat menggunakan grid-area untuk menempatkan elemen di posisi tertentu dalam grid.

---

#3. Keuntungan Menggunakan Flexbox dan Grid Layout

Dengan menggunakan Flexbox dan Grid Layout, kamu dapat membuat layout yang lebih fleksibel dan responsif. Berikut adalah beberapa keuntungan dari kedua teknik ini:

  • Flexbox: Mudah digunakan untuk layout satu dimensi (baris atau kolom). Ideal untuk elemen-elemen yang perlu disusun dalam satu baris atau kolom, seperti navigasi atau daftar.
  • Grid Layout: Lebih cocok untuk layout dua dimensi yang kompleks. Memberikan kontrol lebih besar terhadap baris dan kolom, serta memungkinkan elemen untuk menempati beberapa baris atau kolom dalam grid.
---

#4. Kesimpulan

Flexbox dan Grid Layout adalah dua teknik modern yang sangat berguna untuk membuat layout halaman web yang responsif dan fleksibel. Flexbox lebih cocok untuk layout satu dimensi, sementara Grid Layout lebih tepat untuk layout dua dimensi. Dengan menguasai kedua teknik ini, kamu bisa membuat halaman web yang lebih kompleks dan mudah dikelola.

Di artikel berikutnya, kita akan membahas tentang Media Queries untuk desain responsif. Teruskan pembelajaran CSS-mu untuk menciptakan halaman web yang lebih dinamis!


إرسال تعليق

Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.