Sebelas Chapter section ini membentuk satu rangkaian fondasi: peran HTML dan CSS, selector, warna, font, box model, ukuran, display, hingga class. Fondasi tersebut cukup untuk menata halaman sederhana, tetapi CSS sebagai bahasa jauh lebih luas dari yang kita singgung. Chapter ini bukan materi teknis baru; melainkan peta jalan untuk memutuskan kapan melangkah ke CSS lanjutan dan topik apa yang layak diutamakan.

Tanda Siap Melangkah #

Belajar berdasarkan kebutuhan lebih melekat daripada membaca dokumentasi berurutan. Tiga tanda berikut menunjukkan fondasi telah matang:

  • Struktur HTML terasa alami: memilih elemen yang tepat untuk konten tidak lagi memerlukan pikir panjang.
  • Styling dasar lancar: selector class, warna, font, jarak, border, dan ukuran kotak dapat ditulis tanpa membuka catatan.
  • Muncul kebutuhan yang tidak terjawab properti dasar, misalnya kartu yang sejajar rata tengah, header yang menempel saat halaman digulir, atau susunan yang berubah di layar ponsel.

Ketiga tanda biasanya datang bersamaan: sebuah proyek kecil menuntut tata letak yang lebih kompleks dari satu kolom. Itu momen yang tepat memilih topik lanjutan secara sadar.

Peta Topik CSS Lanjutan #

Topik berikut adalah isi utama CSS level menengah; setiap baris menjawab keluhan yang umum terasa ketika fondasi dirasa kurang:

TopikMasalah yang dijawab
FlexboxMenyusun item dalam satu baris atau satu kolom dengan perataan dan jarak otomatis
GridMembagi halaman menjadi baris dan kolom sekaligus (tata letak dua dimensi)
positionMenempelkan header saat halaman digulir, menumpuk elemen seperti overlay
Responsive dan media queryMengubah gaya mengikuti lebar layar atau jenis perangkat
Transisi dan animasiMenghaluskan perubahan gaya, misalnya warna tombol yang berpindah bertahap
Custom propertiesMenyimpan warna dan nilai tema dalam variabel yang mudah diganti

Flexbox dan grid menempati urutan atas karena hampir semua halaman modern menyusun kontennya dengan keduanya. Media query menyusul ketika halaman perlu tampil baik di layar besar maupun ponsel; sisanya adalah penyempurna sesuai kebutuhan proyek.

Rute Belajar yang Dianjurkan #

Urutan berikut menyusun topik di atas menjadi satu lintasan yang bertahap:

  1. Latih kembali fondasi: tata halaman kecil dengan selector class, warna, font, jarak, dan border tanpa contoh.
  2. Pelajari flexbox, lalu grid, karena keduanya menjawab mayoritas kebutuhan tata letak.
  3. Tambahkan media query agar hasil tata letak tetap terbaca di layar sempit.
  4. Wujudkan satu proyek utuh yang memakai seluruh topik di atas.
  5. Pelajari transisi dan custom properties sebagai lapisan penyempurna.

Peta jalan yang sama dapat ditulis ulang sebagai halaman HTML sederhana:

<!doctype html>
<html lang="id">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Peta Jalan CSS</title>
  <style>
    body {
      font-family: sans-serif;
      max-width: 560px;
      margin: 0 auto;
      padding: 16px;
    }
    li {
      margin-bottom: 8px;
    }
  </style>
</head>
<body>
  <h1>Peta Jalan CSS</h1>
  <p>Urutan topik yang dianjurkan setelah section HTML dan CSS:</p>
  <ol>
    <li>Latihan selector, warna, dan font pada halaman kecil</li>
    <li>Box model: margin, padding, border, dan box-sizing</li>
    <li>Flexbox untuk tata letak satu dimensi</li>
    <li>Grid untuk tata letak dua dimensi</li>
    <li>Media query agar halaman responsif</li>
    <li>Transisi dan custom properties sebagai penyempurna</li>
  </ol>
</body>
</html>

Output yang Dihasilkan:

text
Jendela browser menampilkan:
  - Satu kolom daftar bernomor selebar maksimum 560px, di tengah jendela
  - Enam butir peta jalan dengan jarak antarbutir 8px

Mari kita telaah bagian penting file tersebut:

  1. body dengan max-width: 560px dan margin: 0 auto: pola kontainer terbatas di tengah halaman dari Chapter Width dan Height, dipakai langsung pada body karena hanya satu elemen yang diatur.
  2. body dengan padding: 16px: menjaga teks tidak menempel tepi jendela pada layar sempit.
  3. li dengan margin-bottom: 8px: jarak antarbutir daftar diatur dengan materi box model; daftar bernomor dari elemen ol menyajikan urutan belajarnya.

Sumber Belajar Resmi #

Tiga rujukan berikut cukup menemani seluruh lintasan di atas. Modul Styling basics pada MDN menjadi kelanjutan paling mulus karena urutannya senada dengan section ini, modul CSS layout pada MDN membahas flexbox dan grid secara bertahap, sedangkan Learn CSS dari web.dev menyajikan materi yang sama dengan latihan interaktif. Ketiganya gratis dan ditulis oleh pengembang standar web itu sendiri.

Jembatan ke HTML dan JavaScript #

Dengan CSS yang cukup dalam genggaman, section HTML dan JavaScript menjadi langkah alami berikutnya. JavaScript menambah perilaku: membaca masukan pengunjung, merespons klik, dan mengubah isi halaman saat halaman terbuka. Titik temu JavaScript dengan CSS terletak pada atribut class — JavaScript dapat menambahkan atau menghapus class pada elemen, dan tampilannya langsung berubah mengikuti aturan CSS yang telah kita tulis. Menu yang muncul dan tersembunyi, tab yang berpindah konten, dan tombol berstatus aktif lahir dari kerja sama tersebut. Fondasi HTML dan CSS yang barusan kita bangun menjadi panggung tempat seluruh perilaku itu bermain.

Referensi resmi untuk pendalaman:

Berkas Sumber

Berkas pendukung halaman ini dapat diunduh dan dijalankan langsung sesuai penjelasan di atas.

peta-jalan-css.html

Unduh berkas
html
<!doctype html>
<html lang="id">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Peta Jalan CSS</title>
  <style>
    body {
      font-family: sans-serif;
      max-width: 560px;
      margin: 0 auto;
      padding: 16px;
    }
    li {
      margin-bottom: 8px;
    }
  </style>
</head>
<body>
  <h1>Peta Jalan CSS</h1>
  <p>Urutan topik yang dianjurkan setelah section HTML dan CSS:</p>
  <ol>
    <li>Latihan selector, warna, dan font pada halaman kecil</li>
    <li>Box model: margin, padding, border, dan box-sizing</li>
    <li>Flexbox untuk tata letak satu dimensi</li>
    <li>Grid untuk tata letak dua dimensi</li>
    <li>Media query agar halaman responsif</li>
    <li>Transisi dan custom properties sebagai penyempurna</li>
  </ol>
</body>
</html>