ข้ามไปยังเนื้อหา

Responsive Design

ใน Figma คุณสร้าง Artboard แยกกัน — หนึ่งสำหรับ Desktop (1440 px), หนึ่งสำหรับ Tablet (768 px), หนึ่งสำหรับ Mobile (375 px) นั่นคือสิ่งที่ Responsive Design ทำบนเว็บ เพียงแต่ Browser จะสลับให้โดยอัตโนมัติ

เว็บไซต์ Responsive คือ HTML และ CSS ชุดเดียวที่ ปรับรูปแบบ ให้เข้ากับทุกหน้าจอ หน้าเดียวกันที่แสดงผลเต็มจอ 27 นิ้ว ก็พอดีกับโทรศัพท์ขนาด 5 นิ้วด้วย ไม่ต้องซูมขยาย ไม่ต้องเลื่อนซ้าย-ขวา ไม่มีข้อความถูกตัดขาด

ปัจจุบันมากกว่าครึ่งของ Traffic บนเว็บมาจากโทรศัพท์มือถือ ถ้า Design ของคุณดูดีเฉพาะที่ 1440 px คุณกำลังทำให้ผู้ใช้ส่วนใหญ่ได้รับประสบการณ์ที่แย่ Responsive Design จึงไม่ใช่ตัวเลือก แต่เป็นมาตรฐานพื้นฐาน

บทเรียนถัดไปจะสอนแต่ละอย่างโดยละเอียด นี่คือภาพรวมก่อน:

เครื่องมือหน้าที่Figma Analogy
Relative Units (%, rem, vw)ขนาดที่ปรับตามบริบทConstraints (fill, hug, fixed)
Media Queries (@media)ใช้ CSS ต่างกันตามความกว้างหน้าจอแสดง/ซ่อน Layer ตาม Artboard
Mobile-Firstเริ่มออกแบบจากหน้าจอเล็กก่อนออกแบบ Mobile Artboard ก่อน

กรอบ Preview ด้านล่างคือหน้าจอของคุณ ลอง ย่อหน้าต่าง Browser ให้แคบลง (หรือดูบนโทรศัพท์) แล้วสังเกตว่ากล่องสีจะปรับตัว — เริ่มแรกอยู่เคียงกัน แล้วเมื่อพื้นที่แคบลงจะเรียงซ้อนกันในแนวตั้งโดยอัตโนมัติ

สังเกต flex: 1 1 200px — บรรทัดนี้บอกว่า “แต่ละกล่องสามารถขยายและย่อได้ แต่ต้องไม่แคบกว่า 200 px” เมื่อกรอบแคบเกินไปจนไม่สามารถวางสองกล่องเคียงกันได้ กล่องจะขึ้นบรรทัดใหม่โดยอัตโนมัติ — โดยไม่ต้องเขียน Media Query เลย

เป้าหมายหลักของ Responsive Design คืออะไร?
CSS Property ใดที่ทำให้ Flex Items ขึ้นบรรทัดใหม่เมื่อพื้นที่ไม่พอ?
ใน Figma, อะไรเป็น Analogy ของ Media Queries?