Home Tutorial Set Artikel Projects

Belajar CSS Dasar #3: Memahami Properti CSS dan Cara Menggunakannya

Ditulis oleh Jajang Nurjaman | Diperbarui pada 20 November 2025

Ingat konsep dasarnya ya, Sob: Format: properti: nilai; (di dalam kurung kurawal {}). Fungsi: Ngasih perintah ke HTML biar nurut sama keinginan kita.

💡 Motivasi Pembuka: "Kode yang rumit selalu berawal dari baris pertama yang sederhana. Jangan takut mencoba!"

 

Properti CSS Animation (Bikin Elemen Joget) 💃

Ini properti wajib biar web gak kaku kayak kanebo kering. Kita bisa atur gerakan dari A ke B.

  • animation: Jurus shorthand (jalan pintas) buat nulis semua properti animasi dalam satu baris.
  • animation-name: Nama panggilan animasinya (yang kamu bikin di @keyframes).
  • animation-duration: Durasi tayang. Mau cepat (ms) atau lambat (s)?
  • animation-timing-function: Gaya ngebutnya. linear (rata), ease-in (pelan di awal), atau ease-out (pelan di akhir).
  • animation-delay: Waktu ngaret. Nunggu sebentar sebelum animasi mulai jalan.
  • animation-iteration-count: Mau diulang berapa kali? Ketik infinite kalau mau goyang terus selamanya.
  • animation-direction: Arah jalan. normal (maju), reverse (mundur), atau alternate (bolak-balik).
  • animation-fill-mode: Gaya pas animasi kelar. forwards (berhenti di gaya terakhir) atau backwards (balik ke awal).
  • animation-play-state: Rem tangan. Bisa paused (jeda) atau running (jalan).

Contoh Kode:

.kotak-joget
{
  animation-name: goyang;
  animation-duration: 3s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}


“Hidup itu seperti animasi, nikmati setiap pergerakannya, jangan cuma nunggu hasil akhirnya.”

 

Properti CSS Background (Mural Dinding Web) 🎨

Urusan latar belakang, serahkan ke sini. Lengkap banget opsinya.

  • background: Jalan pintas buat nulis semua properti background sekaligus.
  • background-color: Ngasih warna cat dasar.
  • background-image: Masukin gambar/foto pake url('...').
  • background-repeat: Ngatur pengulangan gambar. no-repeat (sekali aja), repeat-x (horizontal), repeat-y (vertikal).
  • background-position: Ngatur letak gambar. Mau di center, top left, atau koordinat 10px 20px.
  • background-size: Ukuran gambar. cover (full layar), contain (gambar utuh), atau pake pixel/persen.
  • background-attachment: Efek scroll. fixed (gambar diem pas discroll), scroll (ikut gerak).
  • background-clip: Batas pewarnaan background. border-box (sampai border), padding-box, atau content-box.
  • background-origin: Titik start (koordinat 0,0) gambar background dimulai dari mana.

Contoh Kode:

.latar-keren {

  background-image: url('gunung.jpg');

  background-size: cover;

  background-position: center;

  background-attachment: fixed; /* Efek Parallax */

}


“Latar belakang (background) masa lalumu tidak menentukan masa depanmu, tapi memperindah ceritamu.”

 

Properti CSS Border (Garis Tepi) 🖼

Biar elemenmu punya batasan yang tegas.

  • border: Jalan pintas (tebal, gaya, warna).
  • border-width: Seberapa tebal garisnya? (thin, medium, thick, atau pixel).
  • border-style: Gayanya. solid (garis lurus), dashed (putus-putus), dotted (titik), double (ganda).
  • border-color: Warnanya apa?
  • border-radius: Ini favorit! Bikin sudut tajam jadi tumpul/melengkung.
  • border-top/right/bottom/left: Kalau mau ngatur satu sisi aja secara spesifik.
  • border-image: Anti-mainstream, pake gambar buat jadi garis tepi.

Contoh Kode:


.kartu {

  border: 2px solid #333;

  border-radius: 15px; /* Melengkung manis */

  border-bottom-width: 5px; /* Bawahnya tebal */

}

“Terkadang batasan (border) diperlukan agar kita tetap fokus pada jalur yang benar.”

 

Properti CSS Column Layout (Gaya Koran) 📰

Pecah teks panjang jadi kolom-kolom biar enak dibaca.

  • columns: Jalan pintas ngatur lebar dan jumlah kolom.
  • column-count: Mau dibagi jadi berapa kolom? (Misal: 3).
  • column-gap: Jarak atau parit antar kolom.
  • column-rule: Garis pemisah di tengah-tengah kolom (mirip border).
  • column-span: Khusus elemen (biasanya judul) yang mau all (melebar menabrak semua kolom).
  • column-width: Lebar ideal minimal per kolomnya.

Contoh Kode:


.berita {

  column-count: 3;

  column-gap: 30px;

  column-rule: 1px solid grey;

}


“Bagi beban masalahmu menjadi kolom-kolom kecil, pasti lebih ringan menyelesaikannya.”

 

Properti CSS Content (Isi Ajaib)

Biasanya dipake bareng ::before atau ::after.

  • content: Isinya apa? Bisa teks, kutipan, atau kosong buat dekorasi.
  • quotes: Ngatur jenis tanda kutipnya.
  • counter-increment: Nambahin nomor urut otomatis (kayak <i>++ di coding).
  • counter-reset: Mulai hitungan dari nol lagi.

Contoh Kode:


.list-poin::before {

  content: "🔥 "; /* Nambah api di depan list */

}


“Content is King. Tapi Context is God. Pastikan isimu bermanfaat!”

 

Properti CSS Display (Sang Pengatur Posisi) 🏗

Ini pondasi tata letak. Wajib paham!

  • display: Jati diri elemen. block (egois, satu baris sendiri), inline (sebaris), flex/grid (modern layout), none (ngilang).
  • visibility: visible (muncul) atau hidden (ngumpet tapi tempatnya masih di-booking).
  • position: Cara nempelnya. static (normal), relative (patokan), absolute (bebas), fixed (nempel layar), sticky (nempel pas discroll).
  • float: Mengapungkan elemen ke left atau right. (Cara lama, tapi masih dipake).
  • clear: Ngusir efek float biar gak kacau layout bawahnya.
  • z-index: Tumpukan layer. Angka makin gede makin di depan muka.
  • overflow: Kalau isinya kebanyakan gimana? hidden (potong), scroll (kasih scrollbar), auto.
  • box-shadow: Kasih efek bayangan biar timbul.
  • box-sizing: Cara ngitung ukuran. Wajib pake border-box biar padding gak bikin ukuran elemen melar.

Contoh Kode:


.navbar {

  position: sticky;

  top: 0;

  z-index: 100; /* Selalu di atas */

  box-shadow: 0 2px 5px rgba(0,0,0,0.1);

}


“Posisikan dirimu di tempat yang tepat (position), maka kamu akan bersinar.”

 

Properti CSS Flexible / Flexbox (Layout Modern 1D) 🤝

Sahabat terbaik frontend dev zaman now.

  • flex-direction: Arah mainnya. row (mendatar) atau column (menurun).
  • justify-content: Rata mana di sumbu utama? center, space-between (pojok-pojok), flex-start.
  • align-items: Rata mana di sumbu silang (atas-bawah)? center, stretch.
  • flex-wrap: Kalau gak muat? wrap (turun ke bawah) atau nowrap (maksa sebaris).
  • flex-grow: Boleh melar gak kalau ada sisa tempat?
  • flex-shrink: Boleh menciut gak kalau sempit?
  • order: Ngatur urutan antrian (bisa tuker posisi tanpa ubah HTML).

Contoh Kode:


.menu {

  display: flex;

  justify-content: space-between;

  align-items: center;

}


“Jadilah fleksibel. Kaku cuma bikin kamu mudah patah saat ada tekanan.”

 

Properti CSS Font (Gaya Tulisan) ✍️

Biar tulisanmu enak dibaca dan estetik.

  • font-family: Jenis font (Arial, Times, atau font keren lainnya).
  • font-size: Besar kecilnya huruf.
  • font-weight: Ketebalan. bold, normal, atau angka 100-900.
  • font-style: italic (miring) atau normal.
  • font-variant: small-caps (huruf kecil tapi bentuknya kapital).

Contoh Kode:


h1 {

  font-family: 'Poppins', sans-serif;

  font-weight: 700;

  font-size: 2rem;

}


“Suarakan idemu dengan 'font' yang lantang dan jelas!”

 

Properti CSS Grid Layout (Layout Modern 2D) 🗺

Lebih dewa dari Flexbox karena bisa ngatur baris DAN kolom sekaligus.

  • grid-template-columns: Definisikan lebar kolom-kolomnya.
  • grid-template-rows: Definisikan tinggi baris-barisnya.
  • gap: Jarak antar sel grid.
  • grid-column / grid-row: Ngatur satu item mau makan berapa kotak (start / end).
  • grid-area: Ngasih nama wilayah biar gampang manggilnya (misal: "header", "sidebar").

Contoh Kode:


.galeri {

  display: grid;

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

  gap: 10px;

}


“Rencanakan struktur hidupmu sepresisi Grid system.”

 

Properti CSS List (Daftar Poin) 📝

Ngatur <ul> dan <ol>.

  • list-style-type: Ganti bullet. disc, circle, square, decimal (angka), atau none (ilangin).
  • list-style-position: Posisi bulletnya. inside (masuk area teks) atau outside (di luar).
  • list-style-image: Ganti bullet pake gambar sendiri.

Contoh Kode:

ul {

  list-style-type: none; /* Bersih tanpa titik */

}

“Satu per satu, selesaikan daftar impianmu.”


Properti CSS Margin (Jaga Jarak Luar) ↔️

Personal space buat elemenmu.

  • margin: Jalan pintas 4 sisi.
  • margin-top/right/bottom/left: Jarak spesifik per sisi.
  • Trik: margin: 0 auto; buat bikin elemen blok jadi rata tengah horizontal.

Contoh Kode:


.konten {

  margin: 20px auto; /* Atas-bawah 20px, Kiri-kanan Auto (Tengah) */

}


“Berikan ruang (margin) untuk dirimu sendiri beristirahat.”

 

Properti CSS Outline (Garis Fokus) 🔦

Garis di luar border, gak makan tempat (gak ngerusak layout).

  • outline-width: Tebalnya.
  • outline-style: Gayanya (solid, dotted, dll).
  • outline-color: Warnanya.
  • outline-offset: Jarak antara outline sama border elemen.

Contoh Kode:


button:focus {

  outline: 3px solid pink;

  outline-offset: 2px;

}


“Fokuslah pada tujuanmu, biarkan dunia melihat sinarmu (outline).”

 

Properti CSS Padding (Bantalan Dalam) 🛋

Jarak antara isi konten sama kulit luarnya (border).

  • padding: Jalan pintas 4 sisi.
  • padding-top/right/bottom/left: Atur per sisi.

Contoh Kode:


.tombol {

  padding: 10px 20px; /* Biar teks gak kejepit */

}


“Perbesar kapasitas diri (padding) agar kamu bisa menampung lebih banyak ilmu.”

 

Properti CSS Print (Versi Cetak) 🖨

Biar pas di-print ke kertas hasilnya rapi.

  • page-break-before: Paksa ganti halaman sebelum elemen ini.
  • page-break-after: Paksa ganti halaman setelah elemen ini.
  • page-break-inside: avoid biar elemen (kayak tabel/gambar) gak kepotong di tengah halaman.

Contoh Kode:


@media print {

  h2 { page-break-before: always; } /* Judul bab selalu di kertas baru */

}


“Meninggalkan jejak fisik itu penting, pastikan hasilnya sempurna.”

 

Properti CSS Size (Dimensi) 📏

Ngatur gedanya elemen.

  • width: Lebar.
  • height: Tinggi.
  • min-width / min-height: Batas minimal (gak boleh lebih kecil dari ini).
  • max-width / max-height: Batas maksimal (gak boleh lebih gede dari ini). Penting buat responsif!

Contoh Kode:


img {

  max-width: 100%; /* Biar gambar gak offside di HP */

  height: auto;

}


“Tahu batasan (max-width) itu penting agar tidak berlebihan.”

 

Properti CSS Table (Spesial Tabel) 📊

Biar tabel gak jadul.

  • border-collapse: Wajib pake collapse biar garis tabel nyatu rapi (gak dobel).
  • border-spacing: Jarak antar sel (kalau gak di-collapse).
  • caption-side: Posisi judul tabel (atas/bawah).
  • table-layout: fixed (lebar kolom kaku/cepat) atau auto (nyesuain isi konten).
  • empty-cells: show atau hide sel yang gak ada isinya.

Contoh Kode:


table {

  border-collapse: collapse;

  width: 100%;

}


“Data yang terstruktur membawa kejelasan.”

 

Properti CSS Text (Format Paragraf) 📖

Dandanin teks biar ganteng.

  • text-align: left, right, center, justify.
  • text-decoration: underline (garis bawah), line-through (coret), none (polos).
  • text-transform: uppercase (KAPITAL), lowercase (kecil), capitalize (Huruf Depan Besar).
  • text-indent: Teks baris pertama agak masuk ke dalam.
  • letter-spacing: Jarak antar huruf.
  • word-spacing: Jarak antar kata.
  • line-height: Jarak antar baris (biar bacanya napas).
  • white-space: Cara nanganin spasi/enter. nowrap (jangan turun baris), pre (sesuai ketikan).
  • direction: Arah baca. ltr (kiri ke kanan) atau rtl (kanan ke kiri - Arab).

Contoh Kode:


p {

  line-height: 1.6;

  letter-spacing: 0.5px;

  text-align: justify;

}


“Setiap kata punya makna, aturlah agar pesanmu tersampaikan dengan indah.”

 

Properti CSS Transform (Otak-Atik Bentuk) 🔄

Memanipulasi geometri tanpa ngerusak tetangga.

  • transform: Isinya fungsi kayak rotate() (putar), scale() (zooming), skew() (miringin), translate() (geser posisi).
  • transform-origin: Titik pusat putarannya (tengah, pojok kiri, dll).
  • transform-style: preserve-3d kalau mau mainan 3 dimensi.

Contoh Kode:


.icon:hover {

  transform: scale(1.2) rotate(10deg); /* Efek pop-up */

}


“Jangan takut berubah (transform). Perubahan membawa perspektif baru.”

 

Properti CSS Transition (Perubahan Mulus) 🦢

Kunci bikin efek interaktif yang elegan.

  • transition: Jalan pintas.
  • transition-property: Apa yang mau dianimasikan? (all, background, width).
  • transition-duration: Berapa lama proses berubahnya? (misal 0.3s).
  • transition-timing-function: Kurva kecepatannya (ease, linear).
  • transition-delay: Nunggu bentar sebelum berubah.

Contoh Kode:


.tombol {

  background: blue;

  transition: background 0.3s ease;

}

.tombol:hover {

  background: darkblue; /* Berubah pelan-pelan, gak kaget */

}


“Transisi terbaik adalah yang berjalan mulus tanpa guncangan. Keep calm and code on!”