CSS DASAR • BAB 5
01 / 27
FRONT END MASTERCLASS • KELAS 10 • SEMESTER 1

BAB 5 — CSS DASAR

SENI MENDANDANI HALAMAN WEB

Kamu sudah bisa membangun rangka rumah dengan HTML. Sekarang saatnya mengecat, menata, dan mendekorasi rumah itu agar indah dipandang. Itulah tugas CSS. 🎨

▼ Gunakan ← → atau tombol panah untuk navigasi

📑 Peta Perjalanan Belajar

Klik kartu mana pun untuk langsung melompat ke materinya.

🧩
CSS Syntax
Aturan penulisan CSS
🏷️
Inline CSS
Style di dalam tag
📓
Internal CSS
Style di <head>
🔗
External CSS
File .css terpisah
🎨
Color
HEX, RGB, HSL
🖼️
Background
Warna, gambar, gradient
🔤
Font
Family, size, weight
✍️
Text
Align, transform, shadow
🖌️
Border
Garis & radius
📦
Margin
Ruang luar elemen
🛋️
Padding
Ruang dalam elemen
📐
Width & Height
Ukuran elemen
🚀
Mini Project
Website Profil
🏋️
Latihan
3 tingkat kesulitan
🧠
Rangkuman
Mind map & tabel

🎯 Tujuan Pembelajaran

Setelah bab ini selesai, kamu akan mampu…

Memahami struktur penulisan (syntax) CSS dengan benar.
Membedakan dan menggunakan Inline, Internal, dan External CSS.
Mengatur warna, background, font, dan teks sebuah halaman.
Menguasai box model: border, margin, padding, width & height.
Membuat website profil personal pertamamu dari nol! 🚀

04 Apa Itu CSS?

CSS = Cascading Style Sheets — bahasa untuk mendandani HTML.

🎭 Analogi: Sang Penata Gaya

HTML adalah orang dengan baju polos. CSS adalah stylist yang datang dan mengubahnya jadi keren!

💡 Penjelasan

Tanpa CSS, halaman web hanya teks hitam-putih membosankan. Dengan CSS kamu bisa mengatur warna, ukuran, posisi, jarak, dan animasi.

"Cascading" = aturan mengalir dari atas ke bawah; aturan yang lebih spesifik / terakhir menang.

backgroundcolorfont-size marginborder+ ratusan lagi

🔑 Ingat: HTML = kerangka & isi, CSS = tampilan & gaya.

05 CSS Syntax — Aturan Main

Setiap aturan CSS punya 3 bagian: Selector, Property, dan Value.

🧩 Anatomi Aturan CSS

selector { property: value; }

💻 Contoh Kode
/* Mengatur semua paragraf */
p {
  color: gold;          /* warna teks   */
  font-size: 18px;      /* ukuran huruf */
  text-align: center;   /* rata tengah  */
}
  • 🔹 p → selector (elemen yang dituju)
  • 🔹 color → property (sifat yang diubah)
  • 🔹 gold → value (nilainya)
  • 🔹 Akhiri tiap baris dengan titik koma ( ; )

06 Inline CSS

Menempel style langsung di dalam tag lewat atribut style.

🏷️ Analogi: Stiker di Baju

Seperti menempel stiker langsung di satu baju. Cepat, tapi hanya untuk satu elemen itu saja.

💻 Contoh Kode
<p style="color:gold; font-size:20px;">
  Teks ini berwarna emas!
</p>

<h1 style="text-align:center;">Judul Tengah</h1>

Kelebihan: cepat untuk uji coba 1 elemen.

Kekurangan: berantakan & sulit dirawat bila dipakai banyak.

Teks ini berwarna emas!

Judul Tengah

07 Internal CSS

Menulis semua style di dalam tag <style> pada bagian <head>.

📓 Analogi: Buku Catatan di Tas

Aturan gaya disimpan di satu buku catatan di dalam tas (head) — berlaku untuk seluruh halaman ini.

💻 Contoh Kode
<head>
  <style>
    body { background: navy; }
    p    { color: gold; }
  </style>
</head>

Kelebihan: rapi, satu halaman cukup satu tempat aturan.

Kekurangan: tidak bisa dipakai ulang di halaman lain.

08 External CSS

Style ditaruh di file terpisah (style.css) lalu dihubungkan dengan <link>.

📚 Analogi: Buku Panduan Resmi
📄style.css
🔗<link>
🌐Browser
Tampil

Satu buku panduan dipakai oleh banyak halaman sekaligus. Cara paling profesional!

💻 Contoh Kode

File 1 — index.html

<head>
  <link rel="stylesheet" href="style.css">
</head>

File 2 — style.css

body { background: navy; }
h1   { color: gold; }

Paling direkomendasikan untuk website nyata.

09 Inline vs Internal vs External

Tiga cara, kapan memakai yang mana?

CaraDitulis diCakupanKapan dipakai
Inlinestyle="..." dalam tag1 elemenUji cepat / 1 elemen khusus
Internal<style> di head1 halamanHalaman tunggal kecil
ExternalFile .css terpisahBanyak halamanWebsite nyata (⭐ terbaik)
⚖️ Urutan Prioritas (jika bertabrakan)
🥇Inline
paling kuat
🥈Internal / External
tergantung urutan

Semakin spesifik dan semakin belakangan ditulis, aturan itu yang menang. Inilah arti kata "Cascading".

10 Color — Warna

4 cara menulis warna: nama, HEX, RGB/RGBA, dan HSL.

🎨 Analogi: Kode Cat di Toko

Di toko cat, tiap warna punya kode khusus (mis. "RAL 1023"). Di CSS pun sama — komputer butuh kode pasti agar warnanya tepat.

color: red;                 /* nama   */
color: #FFD700;             /* HEX    */
color: rgb(255, 215, 0);    /* RGB    */
color: rgba(255,215,0,0.5); /* + alpha*/
color: hsl(51, 100%, 50%);  /* HSL    */

🔸 RGBA punya alpha (0–1) untuk transparansi.

🧪 Live Demo — Color Picker
Halo Warna! 🎨

background: rgba(10,14,26,1);

11 Background

Latar bisa berupa warna polos, gambar, atau gradient.

🖼️ Analogi: Wallpaper Ruangan

Dinding kamarmu bisa dicat polos, ditempel poster, atau diberi motif gradasi. Background CSS bekerja persis seperti itu.

background-color: navy;
background-image: url("foto.jpg");
background: linear-gradient(45deg,
            gold, cyan);
background-repeat: no-repeat;
background-position: center;
🧪 Live Demo — Gradient Builder

12 Font

Atur jenis, ukuran, ketebalan, dan gaya huruf.

✍️ Analogi: Tulisan Tangan

Setiap orang punya gaya tulisan tangan berbeda. Font = gaya tulisan yang dipilih komputer.

font-family: 'Poppins', sans-serif;
font-size: 24px;
font-weight: 700;   /* tebal */
font-style: italic; /* miring */

🌐 Google Fonts: tambahkan <link> Google Fonts di head, lalu pakai nama font-nya.

🧪 Live Demo — Font Switcher
Kreativitas Tanpa Batas

13 Text Properties

Atur posisi, dekorasi, dan jarak teks.

📝 Analogi: Menu di Google Docs

Tombol rata kiri/tengah, garis bawah, huruf KAPITAL — semua yang sudah kamu kenal di Word, ada juga di CSS.

text-align: center;
text-decoration: underline;
text-transform: uppercase;
letter-spacing: 3px;
text-shadow: 2px 2px 6px gold;
🧪 Live Demo — Text Studio
Belajar CSS itu Seru

14 Border

Garis tepi elemen: atur tebal, gaya, warna, dan kelengkungan.

🖼️ Analogi: Bingkai Foto

Bingkai foto bisa tipis, tebal, putus-putus, atau sudutnya membulat. border-radius mengubah persegi jadi lingkaran!

border-width: 4px;
border-style: dashed;  /* solid|dotted */
border-color: gold;
/* atau singkat: */
border: 4px solid gold;
border-radius: 16px;   /* 50% = bulat */
🧪 Live Demo — Border Lab
BOX

15 Margin + Box Model

Margin = ruang KOSONG di LUAR elemen.

📦 Analogi: Jarak Meja ke Tembok

Margin itu seperti jarak antara mejamu dengan tembok — ruang di luar yang memisahkan elemen satu dengan lainnya.

margin: 20px;            /* semua sisi */
margin: 10px 20px;       /* atas-bwh | kiri-kanan */
margin-top: 30px;        /* satu sisi  */
margin: 0 auto;          /* tengah! ⭐ */

margin: 0 auto = trik klasik untuk memposisikan ke tengah.

🧪 Live Demo — Box Model
CONTENT

🟧 Area oranye = margin. Geser slider, lihat ruang luar membesar!

16 Padding + Box Model

Padding = ruang KOSONG di DALAM elemen (antara isi & border).

🛋️ Analogi: Bantal di Sofa

Padding seperti empuknya bantal sofa — jarak antara kamu (isi) dengan sandaran (border). Membuat konten tidak mepet ke tepi.

padding: 20px;          /* semua sisi */
padding: 10px 30px;     /* atas-bwh | kiri-kanan */
padding-left: 40px;     /* satu sisi  */

🧮 Box Model: Content → Padding → Border → Margin (dari dalam ke luar).

🧪 Live Demo — Padding
CONTENT

🟩 Area hijau = padding. Semakin besar, isi makin "lega" dari tepi.

17 Width & Height

Ukuran elemen: satuan px, %, auto, dan vw/vh.

👕 Analogi: Ukuran Baju

Ada baju ukuran tetap (px) seperti "S/M/L", dan ada yang menyesuaikan badan (%) seperti karet. CSS punya keduanya.

width: 300px;     /* tetap        */
width: 50%;       /* setengah induk*/
width: 100vw;     /* lebar layar   */
height: 100vh;    /* tinggi layar  */
max-width: 600px; /* batas maksimal*/
🧪 Live Demo — Resize Box
60% × 80px

Geser slider — kotak berubah ukuran secara real-time!

18 Menggabungkan Semuanya!

Satu kartu menggunakan banyak property sekaligus — atur semuanya secara langsung.

🧪 Live Demo — Kartu Interaktif

SISWA HEBAT

Calon Web Developer 🚀

💻 Kode yang Sedang Berjalan
.kartu {
  background: #101524;
  color: white;
  padding: 24px;
  border: 3px solid gold;
  border-radius: 16px;
  text-align: center;
  width: 70%;
  box-shadow: 0 0 20px gold;
}

✨ Lihat? Hanya dengan beberapa property, sebuah <div> polos berubah jadi kartu profil yang elegan.

Geser slider di kiri dan amati kode mana yang berubah!

🚀 Mini Project: Website Profil Personal

Saatnya membangun halaman profil pertamamu! Ini alur pengerjaannya:

🧱1. Struktur HTML
header, foto, skills, footer
🎨2. Warna & Font
tema & tipografi
📦3. Box Model
margin, padding, border
4. Sentuhan Akhir
shadow, radius, gradient
🎯 Komponen Wajib
  • Header bergradient dengan nama
  • Foto profil melingkar (div CSS)
  • Bio singkat tentang dirimu
  • Section Skills (daftar kemampuan)
  • Footer dengan kontak/sosmed
🧰 Property yang Dipakai
backgroundlinear-gradientcolor font-familyborder-radiuspadding marginbox-shadowtext-align widthborder

👉 Lanjut ke slide berikutnya untuk melihat kode lengkapnya, langkah demi langkah.

20 Mini Project — Struktur HTML

Langkah 1: bangun kerangka halaman dengan HTML.

<!DOCTYPE html>
<html lang="id">
<head>
  <meta charset="UTF-8">
  <title>Profil Saya</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <header class="hero">
    <div class="avatar"></div>
    <h1>Nama Kamu</h1>
    <p>Pelajar & Calon Web Developer</p>
  </header>

  <section class="bio">
    <h2>Tentang Saya</h2>
    <p>Saya siswa kelas 10 yang sedang belajar membuat website.</p>
  </section>

  <section class="skills">
    <h2>Skills</h2>
    <span class="chip">HTML</span>
    <span class="chip">CSS</span>
    <span class="chip">Kreatif</span>
  </section>

  <footer>© 2026 Nama Kamu</footer>
</body>
</html>

🧱 Ini baru "rangka rumah" — masih polos. Di slide berikutnya kita beri "cat & dekorasi" dengan CSS.

21 Mini Project — Styling CSS

Langkah 2: simpan di style.css dan dandani halamannya.

body {
  font-family: 'Inter', sans-serif;
  margin: 0;
  background: #0a0e1a;
  color: #fff;
  text-align: center;
}
.hero {
  background: linear-gradient(135deg, #FFD700, #9B59B6);
  padding: 40px 20px;
  color: #111;
}
.avatar {
  width: 110px; height: 110px;
  border-radius: 50%;            /* lingkaran */
  background: #0a0e1a;
  border: 4px solid #fff;
  margin: 0 auto 14px;           /* tengah */
}
.bio, .skills { padding: 24px; max-width: 600px; margin: 0 auto; }
.chip {
  display: inline-block;
  background: #FFD700; color: #111;
  padding: 6px 16px; border-radius: 20px; margin: 4px;
}
footer { padding: 18px; background: #050810; color: #B0BAD0; }

22 Mini Project — Hasil Akhir 🎉

Inilah tampilan website profil yang sudah jadi — semua dari HTML + CSS!

🧑‍💻

NAMA KAMU

Pelajar & Calon Web Developer

Tentang Saya

Saya siswa kelas 10 yang sedang belajar membuat website yang keren dengan HTML & CSS.

Skills

HTML CSS Kreatif
© 2026 Nama Kamu • Dibuat dengan ❤️ & CSS

💪 Ganti "NAMA KAMU", warna, dan skills dengan milikmu sendiri. Selamat, kamu baru saja membuat website pertamamu!

🏋️ Latihan 1

⭐ MUDAH
📋 Soal

Ubah warna background halaman menjadi navy dan warna teks menjadi emas (gold) menggunakan Internal CSS.

🎯 Target output: Seluruh halaman berlatar navy gelap dengan tulisan berwarna emas.

Gunakan tag <style> di dalam <head>.
Selector body dengan property background-color: navy; dan color: gold;

🏋️ Latihan 2

⭐⭐ SEDANG
📋 Soal

Buat sebuah kartu profil dengan sudut membulat, bayangan, dan padding yang nyaman menggunakan External CSS.

🎯 Target output: Sebuah kotak rapi di tengah layar dengan border melengkung dan efek bayangan lembut.

Buat file style.css terpisah, hubungkan dengan <link>.
Property kunci: border-radius, box-shadow, padding, width, dan margin: 0 auto; untuk ke tengah.

🏋️ Latihan 3 — Tugas Akhir

⭐⭐⭐ TANTANGAN
📋 Soal

Buat website profil personal 1 halaman yang mencakup: header bergradient, foto profil melingkar (pakai div CSS), section skills, dan footer. Gunakan minimal 8 property CSS yang berbeda.

🎯 Target output: Halaman profil utuh yang mirip dengan hasil Mini Project (slide 22), tetapi dengan datamu sendiri.

Mulai dari struktur HTML dulu (header, section, footer), baru tambahkan CSS langkah demi langkah.
Checklist 8 property: background, linear-gradient, color, border-radius, padding, margin, box-shadow, text-align. Lihat kembali slide 20 & 21 sebagai contoh!

🧠 Rangkuman CSS Dasar

Semua yang sudah kamu kuasai di bab ini.

🗺️ Mind Map Property
🧩 Syntax🏷️ Inline📓 Internal 🔗 External🎨 Color🖼️ Background 🔤 Font✍️ Text🖌️ Border 📦 Margin🛋️ Padding📐 Width/Height
📊 Tabel Ringkas
PropertyFungsiContoh Nilai
colorWarna teksgold, #FFD700
backgroundLatar elemennavy, linear-gradient(...)
font-sizeUkuran huruf18px, 1.2rem
text-alignPerataan tekscenter, left
borderGaris tepi2px solid gold
marginRuang luar20px, 0 auto
paddingRuang dalam16px
width / heightUkuran elemen300px, 50%
BAB 5 SELESAI 🎉
🏆

"Kode yang baik bukan tentang sempurna,
tapi tentang berani memulai dan terus belajar."

Kamu sudah resmi bisa mendandani halaman web! Dari teks polos menjadi website profil yang indah. 👏

🔮 Bab Berikutnya — Teaser

BAB 6 — CSS Layout & Flexbox: belajar menyusun elemen berdampingan, membuat layout responsif, dan menata halaman seperti developer profesional!