Menguasai Figma: Desain UI/UX dari Dasar hingga Handoff

Belum masuk. Progresmu tidak tersimpan.

Masuk
  • Bab 4 dari 11
  • 30 menit
  • 1 latihan kode
  • 4 soal kuis

Warna, Constraints, dan Layout Grid

Di bab ini (8 bagian)
  1. Tujuan
  2. Dari tampilan statis ke tampilan yang siap berubah ukuran
  3. Warna, stroke, dan efek
  4. Constraints
  5. Layout grid
  6. Contoh kerja: kartu promo yang responsif
  7. Kesalahan umum
  8. Rangkuman

Tujuan bab ini

  • Mengatur fill, stroke, dan effects, serta memeriksa kontras teks sesuai WCAG AA.
  • Memahami cara constraints menjaga posisi objek saat frame berubah ukuran.
  • Memakai layout grid untuk desktop, tablet, dan mobile, lalu menerjemahkannya ke CSS.

Dari tampilan statis ke tampilan yang siap berubah ukuran

Desain yang bagus di satu ukuran layar belum tentu bagus di ukuran lain. Ponsel, tablet, dan laptop punya lebar yang berbeda, dan pengguna bisa memutar layar kapan saja. Bab ini membahas dua hal: bagaimana memberi warna dan efek dengan benar, lalu bagaimana memastikan objek tetap di tempat yang tepat saat ukuran frame berubah.

Warna, stroke, dan efek

Panel kanan punya tiga bagian yang mengatur tampilan visual sebuah objek.

Fill

Fill adalah isi warna objek. Jenisnya:

  • Solid: satu warna, misalnya #7C5CFF.
  • Gradient: linear, radial, angular, dan diamond.
  • Image: gambar sebagai isi.
  • Shader: jenis fill baru di 2026.

Contoh palet yang dipakai di kelas ini: #7C5CFF (ungu), #FF6B5B (merah koral), #1FCB8F (hijau), #2FA8FF (biru), #FFB020 (kuning), dan #E15AB8 (merah muda).

Stroke

Stroke adalah garis tepi. Kamu bisa mengatur posisinya inside, center, atau outside, mengatur tebal per sisi, dan membuat garis putus-putus. Posisi stroke berpengaruh pada ukuran akhir. Stroke inside tidak menambah ukuran objek, sedangkan stroke outside membuat objek tampak lebih besar. Di CSS, perilaku ini mirip perbedaan box-sizing dan outline.

Effects

Effects menambahkan kedalaman: drop shadow, inner shadow, layer blur, background blur, serta noise dan texture. Pakai secukupnya. Satu bayangan halus pada kartu biasanya lebih baik daripada tiga bayangan tebal yang bertumpuk.

Kontras teks

Warna yang cantik belum tentu terbaca. Aturan yang perlu kamu ingat: teks normal minimal punya kontras 4.5:1 terhadap latarnya, sesuai standar WCAG AA. Teks abu-abu muda di atas latar putih sering gagal memenuhi angka ini. Pengguna dengan penglihatan kurang baik, atau siapa saja yang membaca di bawah terik matahari, akan kesulitan.

Kebiasaan yang baik: setiap kali memilih warna teks, periksa kontrasnya. Di bab plugin nanti kamu akan bertemu alat seperti Stark yang membantu pemeriksaan ini.

Constraints

Constraints menentukan bagaimana sebuah objek bereaksi saat frame induknya diubah ukurannya.

Contoh dari deck: sebuah tombol diberi constraint Right dan Bottom. Saat frame dilebarkan atau ditinggikan, tombol tetap menempel di pojok kanan bawah. Tanpa constraint itu (default-nya Left dan Top), tombol akan tertinggal di posisi lamanya dan terlihat melayang di tengah setelah frame melebar.

Opsi constraint horizontal adalah Left, Right, Left & Right, Center, dan Scale. Opsi vertikal serupa untuk Top dan Bottom.

ConstraintPerilaku saat frame melebar
LeftJarak ke kiri tetap
RightJarak ke kanan tetap
Left & RightJarak kiri dan kanan tetap, objek ikut melebar
CenterTetap di tengah
ScaleUkuran dan posisi berubah sebanding

Padanan di CSS

Constraints sangat mirip dengan position: absolute di CSS. Constraint Right dan Bottom sama dengan menempelkan elemen memakai right dan bottom di dalam induk yang position: relative.

.layar {
  position: relative;
}

.tombol-aksi {
  position: absolute;
  right: 16px;
  bottom: 16px;
}

Constraint Left & Right setara dengan memberi left dan right sekaligus, sehingga lebar elemen mengikuti lebar induk.

Layout grid

Layout grid adalah garis bantu yang membagi frame menjadi kolom atau baris. Grid membuat posisi elemen di berbagai layar terasa teratur.

Contoh dari deck untuk desktop: 12 kolom, gutter 24, margin 80. Gutter adalah jarak antarkolom, margin adalah jarak dari tepi frame ke kolom pertama. Jumlah kolom yang umum:

PerangkatJumlah kolom
Desktop12
Tablet8
Mobile4

Tipe grid di Figma ada tiga: Columns, Rows, dan Grid.

Padanan di CSS

Layout grid Figma bisa diterjemahkan ke CSS Grid. Gutter menjadi gap, margin menjadi padding di kiri dan kanan.

.halaman {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 24px;
  padding: 0 80px;
}

@media (max-width: 600px) {
  .halaman {
    grid-template-columns: repeat(4, 1fr);
  }
}

Dengan begitu, designer dan developer berbicara dalam bahasa yang sama: "kartu ini menempati 4 dari 12 kolom" punya arti yang jelas di kedua sisi.

Contoh kerja: kartu promo yang responsif

Misalkan kamu membuat banner promo di frame desktop:

  1. Beri frame layout grid 12 kolom, gutter 24, margin 80.
  2. Letakkan judul di kolom 1 sampai 6 dengan constraint Left.
  3. Letakkan tombol "Lihat promo" di pojok kanan bawah dengan constraint Right dan Bottom.
  4. Ubah lebar frame. Judul tetap di kiri, tombol tetap di kanan bawah.
  5. Periksa kontras teks putih di atas latar #7C5CFF. Hasilnya sekitar 4.3:1, sedikit di bawah 4.5:1. Solusinya, pakai ungu yang sedikit lebih gelap untuk latar teks normal, atau besarkan teksnya.

Langkah 4 adalah cara tercepat menguji constraints. Biasakan menarik tepi frame setelah selesai menyusun, sebelum menyerahkan desain.

Kesalahan umum

  • Memilih warna teks hanya karena cantik, tanpa memeriksa kontras minimal 4.5:1.
  • Membiarkan constraint default Left dan Top untuk elemen yang seharusnya menempel di kanan atau bawah.
  • Memakai Group untuk elemen yang butuh constraints. Constraints bekerja pada anak dari Frame.
  • Membuat grid berbeda-beda di setiap layar sehingga posisi elemen tidak konsisten.

Rangkuman

  • Fill bisa berupa solid, gradient (linear, radial, angular, diamond), image, dan shader.
  • Stroke bisa inside, center, atau outside, sedangkan effects meliputi shadow, blur, serta noise dan texture.
  • Teks normal butuh kontras minimal 4.5:1 terhadap latar menurut WCAG AA.
  • Constraints menentukan posisi objek saat frame di-resize, mirip position: absolute dengan right dan bottom di CSS.
  • Layout grid umum: 12 kolom desktop, 8 kolom tablet, 4 kolom mobile, dan bisa diterjemahkan ke CSS Grid dengan gap dan padding.

Selesaikan bab ini

  1. 1. Baca materi
  2. 2. Latihan kode (1)
  3. 3. Kuis (4 soal)

Latihan kode: Constraints dan layout grid di CSS

Terjemahkan dua pengaturan Figma ini ke CSS.

  1. Constraints: tombol .tombol-aksi diberi constraint Right dan Bottom dengan jarak 16 dari tepi frame .layar. Jadikan .layar position: relative dan tombolnya position: absolute dengan right dan bottom 16px.
  2. Layout grid: .halaman memakai grid desktop 12 kolom, gutter 24, margin 80. Pakai display: grid, grid-template-columns: repeat(12, 1fr), column-gap 24px, serta padding kiri dan kanan 80px.

Cek pemahaman

  1. 1Berapa kontras minimal teks normal terhadap latarnya menurut WCAG AA?

  2. 2Tombol diberi constraint Right dan Bottom. Apa yang terjadi saat frame dilebarkan?

  3. 3Layout grid yang umum untuk mobile adalah 12 kolom.

  4. 4Constraint Figma apa yang paling mirip dengan CSS ini?

    .tombol {
      position: absolute;
      right: 16px;
      bottom: 16px;
    }