Logical Properties — CSS

margin-left, padding-top, border-right — property CSS klasik mengasumsikan tulisan mengalir dari kiri ke kanan, atas ke bawah. Tapi bahasa Arab/Ibrani…

margin-left, padding-top, border-right — property CSS klasik mengasumsikan tulisan mengalir dari kiri ke kanan, atas ke bawah. Tapi bahasa Arab/Ibrani mengalir kanan-kiri; Jepang tradisional bisa vertikal. Logical properties menulis CSS berbasis writing direction, bukan arah fisik.

/* Fisik — hardcoded ke LTR */
.kartu {
  margin-left: 1rem;
  padding-top: 0.5rem;
  border-right: 1px solid;
}

/* Logical — mengikuti writing direction */
.kartu {
  margin-inline-start: 1rem;
  padding-block-start: 0.5rem;
  border-inline-end: 1px solid;
}

Kosakata:

Sering dipakai:

Fisik Logical
margin-left margin-inline-start
margin-right margin-inline-end
padding-top padding-block-start
width inline-size
height block-size
max-width max-inline-size

Kenapa peduli walau website-mu cuma bahasa Indonesia?

🎭 Analogi sehari-hari

Coba bayangin kamu nyetir di Inggris (setir kanan, jalan kiri) abis biasa di Indonesia (setir kiri, jalan kanan). GPS yang ngomong "belok ke timur" bingungin — beda arah tergantung kamu lagi di mana. Tapi GPS yang ngomong "belok ke arah perjalanan kamu" — selalu tepat. Logical properties kerja sama di CSS. margin-left itu "arah barat" — kaku ke fisik. margin-inline-start itu "arah awal baris" — adapt ke writing direction (LTR Arab, vertikal Jepang). Bahasa Arab? Layout otomatis mirror tanpa rewrite CSS.

⚠️ Jebakan yang sering ditemui

TL;DR: Logical properties = CSS yang follow writing direction, bukan arah fisik. margin-inline-start (bukan margin-left), padding-block-start (bukan padding-top), inline-size (bukan width). Kosakata: inline = arah baris teks, block = arah baris baru, start/end = awal/akhir. Bonus: kalau suatu saat support Arab/Ibrani, layout auto-mirror tanpa rewrite. inline-size/block-size lebih intent-ful dari width/height. Browser support modern (2023+) udah aman.

Yang akan kamu pelajari