Media Queries
ใน Figma คุณมี Artboard แยกกันสำหรับ Desktop, Tablet และ Mobile คุณตัดสินใจว่า Layer ไหนมองเห็น Font ไหนใหญ่กว่า Column ไหนยุบ Media Query คือวิธีที่คุณแสดง Logic นั้นเป็นโค้ด CSS — “ใช้ กฎเหล่านี้ เมื่อหน้าจอกว้าง เท่านี้”
@media (max-width: 480px) { /* กฎใน Block นี้จะใช้เฉพาะเมื่อ Viewport กว้าง 480 px หรือแควกว่า */}
@media (min-width: 480px) { /* กฎใน Block นี้จะใช้เฉพาะเมื่อ Viewport กว้าง 480 px หรือกว้างกว่า */}คิดว่าเป็นประโยค if สำหรับ CSS:
max-width= “ถ้าหน้าจอกว้าง ไม่เกิน นี้ ให้ทำ…” (ใหญ่ → เล็ก)min-width= “ถ้าหน้าจอกว้าง อย่างน้อย นี้ ให้ทำ…” (เล็ก → ใหญ่)
ตัวอย่างจริง — Card ที่เปลี่ยน Layout
หัวข้อที่มีชื่อว่า “ตัวอย่างจริง — Card ที่เปลี่ยน Layout”กรอบ Preview ด้านล่างคือหน้าจอของคุณ ย่อหน้าต่าง Browser ให้แคบลง (หรือดูบนโทรศัพท์) แล้วสังเกต Card ที่เปลี่ยน Layout เพราะ Preview Pane มีความกว้างประมาณครึ่งหน้าจอบน Desktop Breakpoint ที่ max-width: 420px จะทำงานได้จริงโดยไม่ต้องใช้โทรศัพท์
ที่ความกว้างมากขึ้น รูปภาพและข้อความจะอยู่เคียงกัน เมื่อ Pane แคบกว่า 420 px Block @media (max-width: 420px) จะเริ่มทำงานและเรียงซ้อนกันในแนวตั้ง นี่คือสิ่งที่คุณจะแสดงให้ Developer เห็นโดยสลับระหว่าง Mobile และ Desktop Artboard ใน Figma
เปลี่ยน Typography ด้วย
หัวข้อที่มีชื่อว่า “เปลี่ยน Typography ด้วย”คุณไม่จำกัดแค่ Layout สามารถเปลี่ยน Font Size ซ่อน Element ปรับ Spacing — ทุกอย่างใน CSS สามารถ Override ได้ภายใน Media Query
h1 { font-size: 2.5rem; /* default: หน้าจอใหญ่ */}
@media (max-width: 420px) { h1 { font-size: 1.6rem; /* เล็กลงบนหน้าจอแคว */ }}ข้อผิดพลาดที่นักออกแบบเจอบ่อย
หัวข้อที่มีชื่อว่า “ข้อผิดพลาดที่นักออกแบบเจอบ่อย”- ออกแบบเฉพาะ breakpoint หลัก ๆ (375px, 1440px) แล้วสมมติว่าระหว่างกลางจะดูดีเอง
- ตั้ง breakpoint ตาม “อุปกรณ์ที่มี” แทนตาม “จุดที่ content เริ่มพัง”
มุมมองของ developer
หัวข้อที่มีชื่อว่า “มุมมองของ developer”👨💻 สิ่งที่ developer เห็นจริง ๆ
หัวข้อที่มีชื่อว่า “👨💻 สิ่งที่ developer เห็นจริง ๆ”Designer เห็น “3 design เวอร์ชัน (mobile/tablet/desktop)” แต่ developer ต้องเขียนกฎ CSS ที่ครอบคลุมทุกความกว้างระหว่างกลางด้วย ไม่ใช่แค่ 3 จุดที่ design ไว้
💡 ตัวอย่างจากของจริง
BBC News และ The Guardian ทดสอบเว็บที่ทุกความกว้างหน้าจอ ไม่ใช่แค่ 3 breakpoint เพราะผู้อ่านใช้อุปกรณ์หลากหลายมาก