ทำไมต้องทำจากเล็กไปใหญ่ใน Responsive Web Design

ทำไมต้องทำจากเล็กไปใหญ่ใน Responsive Web Design

 

Mobile Users เพิ่มขึ้นทุกวัน

เรื่องนี้คาดว่าหลายๆ คนคงจะทราบกันดี จากผลสำรวจทุกสำนักรายงานตรงกันว่า จำนวนผู้ใช้ mobile เพิ่มขึ้นสูงมากในไม่กี่ปีที่ผ่านมา และจะแซงผู้ใช้ desktop อย่างแน่นอน จึงไม่ใช่เรื่องแปลกอะไรที่เราจะให้ความสำคัญกับการออกแบบสำหรับ mobile ไม่น้อยไปกว่า desktop

 

Mobile-First ช่วยให้เราโฟกัสไปที่ Content

ด้วยข้อจำกัดในเรื่องขนาดของหน้าจอ ทำให้ designer ต้องใส่ใจกับ content มากเป็นพิเศษในการออกแบบสำหรับ mobile สิ่งที่จะใส่ลงไปจะต้องเป็นสิ่งที่สำคัญและจำเป็นจริงๆ เท่านั้น ด้วยเหตุนี้เอง การออกแบบสำหรับ mobile ก่อนจะช่วยให้เรารู้ว่า “ใจความสำคัญ” ที่จะต้องการจะสื่อให้ users รู้นั้น มีอะไรบ้าง

 

Graceful Degradation vs. Progressive Enhancement

Graceful Degradation คือการออกแบบสำหรับ desktop ก่อน แล้วค่อยมาออกแบบสำหรับ mobile ทีหลัง วิธีนี้จะเน้นไปที่การใช้ประโยชน์จากเทคโนโลยีที่มีอยู่ให้มากที่สุดเท่าที่จะเป็นไปได้ในขณะนั้น แล้วค่อยลดบางส่วนที่ทำไม่ได้หรือไม่เหมาะออกใน mobile โดยมีข้อแม้ที่ว่า content และ functions ที่จำเป็นจะต้องอยู่ครบ

 Progressive Enhancement จะตรงข้ามกับ Graceful Degradation มันคือการออกแบบสำหรับ mobile ก่อน แล้วค่อยมาออกแบบสำหรับ desktop ทีหลัง วิธีนี้เกิดหลังจากที่คนเห็นว่า Graceful Degradation นั้นมีข้อเสียตรงที่เราต้องมาตัดสินใจว่าจะตัดส่วนไหนออกบ้างใน mobile ในทางกลับกัน วิธี Progressive Enhancement จะเน้นไปที่ content และ functions พื้นฐานที่สำคัญที่สุดก่อน หลังจากนั้นค่อยมาคิดต่อว่าเราสามารถเสริมส่วนไหนที่จะทำให้มัน “ดีขึ้น” ได้บ้าง ถึงแม้วิธีนี้จะทำได้ “ยาก” ก็จริง แต่ “ถ้าเราสามารถออกแบบให้รองรับ mobile ได้ เราก็สามารถออกแบบให้รองรับ devices อื่นๆ ได้”

 

 

 

Media Queries ไม่มีทางรองรับ Devices ทั้งหมดได้

 

เราไม่สามารถ “ปรับ(adapt)” เว็บของเราให้เข้ากับ devices ต่างๆ ได้ทั้งหมด ทุกวันนี้ มี devices ใหม่ๆ เกิดขึ้นมากมาย ใครจะไปรู้ว่าอีกหน่อย mobile อาจจะมีขนาดต่างจากที่เป็นอยู่ทุกวันนี้มาก แนวนอนของทุกวันนี้ อาจเป็นแค่แนวตั้งในอนาคต เราไม่มีทางรู้ได้เลย

 

สิ่งที่เราทำได้คือการออกแบบเว็บให้ “ไหล(flow)” ไปตามขนาดที่แตกต่างกันออกไป ไม่ใช่ไปดูว่า dimension ของ devices ต่างๆ มีอะไรบ้าง แล้วนำไปใช้เป็น breakpoints ในการเขียน media queries การออกแบบ layouts ให้เป็นแบบ fluid ดูจะเป็นทางเลือกที่ดีกว่า

 หากเราออกแบบสำหรับ mobile ก่อน โดยใช้ fluid layouts เว็บของเราจะปรับตัวเองให้พอดีกับหน้าจอทุกขนาดได้อย่างอัตโนมัติ อย่างไรก็ตามหน้าตาที่เราออกแบบสำหรับ mobile คงไม่ค่อยดูดีเท่าไรหากอยู่ใน desktop กรณีแบบนี้เราถึงจะใช้ media queries เข้ามาช่วย “ปรับ” หน้าตาของเราให้เข้ากับขนาดหน้าจอนั้นๆ โดยใช้ “min-width” เพื่อรักษาการไหลของสไตล์นั้นเอาไว้ ไม่ใช่ “max-width”

 

Mobile-First ช่วยให้ Code สั้นลง

หากมองในแง่ของการเขียนโค้ดแล้วล่ะก็ แน่นอนว่า layouts ที่ซับซ้อนกว่า โค้ดก็ย่อมซับซ้อนกว่า อย่าลืมว่า html มีไว้เพื่อบอกว่าเรามีของอะไรบ้าง ส่วน css นั้นมีไว้เพื่อบอกว่าของเหล่านั้นจะแสดงผลออกมาอย่างไร ดังนั้น ไม่ว่าจะเป็น mobile, tablet หรือ desktop ก็ตาม html จะต้องเหมือนกันทุกประการ สิ่งที่แตกต่างกันคือการนำเสนอ ซึ่งเราจะใช้ css เข้ามาช่วยปรับการแสดงผลให้เหมาะสมกับหน้าจอขนาดต่างๆ

หากเราเขียนโค้ดโดยเริ่มที่ desktop ก่อน มีโอกาสสูงที่เราจะเขียน html ที่ไม่จำเป็นหรือ css ที่ซ้ำซ้อนลงไปได้ ในทางกลับกัน หากเราเริ่มที่ mobile ซึ่งมี layouts ที่ง่ายกว่า โค้ดของเราจะ clean มากกว่า เนื่องจาก html ที่เพียงพอสำหรับ mobile ก็จะพอเพียงสำหรับ desktop เช่นกัน ในทางตรงกันข้าม html ที่ใช้สำหรับ desktop อาจเกินความจำเป็นสำหรับ mobile ให้เรานึกเสมอว่า “html ไม่ได้มีไว้เพื่อหวังผลทางการตกแต่งสไตล์”

 

เริ่มจาก 0 ไป 100 ดีกว่า 100 ไป 0

มาถึงตรงนี้ คาดว่าทุกคนคงจะเห็นข้อดีของ Mobile-First กันแล้วใช่มั้ยครับ แต่ถ้าใครยังคิดว่าการทำจากจอใหญ่ไปเล็กยังดูดีกว่าอยู่ล่ะก็ ยังเหลือเหตุผลอยู่อีกข้อหนึ่งซึ่งก็คือ เรารู้แค่ว่าหน้าจอที่เล็กที่สุดคือ 0 pixel แต่เราไม่มีทางรู้หน้าจอที่ใหญ่ที่สุดได้ หากเราเขียน media queries โดยใช้ min-width เราไม่จำเป็นต้องรู้ว่าหน้าจอที่ใหญ่ที่สุดที่เราอยากจะรองรับมีขนาดเท่าไร แต่ถ้าเราใช้ max-width นั่นแปลว่าเรายังคงยึดติดกับ devices อยู่ ซึ่งนั่นไม่ใช่หลักการของ responsive web design

 

 

 

 

Credit : Siamhtml.com

โดย :
 3299
ผู้เข้าชม

บทความที่เกี่ยวข้อง

โปรแกรมคอมพิวเตอร์ที่จำลองและประมวลผลการตอบโต้ของมนุษย์กับอุปกรณ์ดิจิทัลได้ เป็นลักษณะการตอบกลับทุกคำถามเพียงบรรทัดเดียว เพื่อยกระดับความแม่นยำและป้องกันข้อมูลส่วนบุคคล
เสิร์ชเอนจิน (Search Engines) หมายถึง โปรแกรมค้นหา ที่ถูกออกแบบมาเป็นเครื่องมือใช้งานในการสืบค้นข้อมูลต่างๆ โดยโปรแกรมส่วนมากที่ใช้สำหรับการค้นหาข้อมูลบนเว็บไซต์ Search engines จะมีวิธีการค้นหาโดยการกรอกข้อมูลหรือคำที่ต้องการสืบค้นลงไป แล้วเว็บไซต์จะทำการประมวลผลลัพธ์ต่างๆ ออกมาให้ผู้สืบค้นข้อมูลทราบ ซึ่งคำค้นหาที่ใช้จะเรียกว่าเป็น Keyword (คีย์เวิร์ด) ของการสืบค้นข้อมูล ในปัจจุบันเทคโนโลยีของ Search Engine ได้มีการพัฒนาและปรับปรุงคุณภาพให้สูงมากยิ่งขึ้น โดยหลังจากที่ทำการค้นหาเรียบร้อยแล้ว ระบบจะสามารถทำการเลือกผลลัพธ์ของผู้ใช้ และบันทึกประวัติการค้นหาไว้สำหรับการกรองผลลัพธ์การค้นหาครั้งต่อไป เพื่อช่วยให้ผู้สืบค้นข้อมูล สามารถทำการค้นหาข้อมูลได้อย่างมีประสิทธิภาพ ถูกต้องแม่นยำ

Feature SoGoodWeb

SoGoodWeb มีระบบรับชำระเงินแบบใหม่ผ่าน Pay Solution รองรับทุกธนาคารชั้นนำ ทำให้การจ่ายเงินผ่านช่องทางออนไลน์เป็นเรื่องง่าย ช่วยให้ลูกค้าจ่ายเงินออนไลน์ได้อย่างสะดวก
LINE Notify คือ บริการที่คุณสามารถได้รับข้อความแจ้งเตือนจากเว็บเซอร์วิสต่างๆ ที่คุณสนใจได้ทาง LINE โดยหลังเสร็จสิ้นการเชื่อมต่อกับทางเว็บเซอร์วิสแล้ว คุณจะได้รับการแจ้งเตือนจากบัญชีทางการของ “LINE Notify” ซึ่งให้บริการโดย LINE นั่นเอง
เหมาะสำหรับลูกค้าที่เปิดธุรกิจทัวร์ - ทัวร์ท่องเที่ยว ทั้งที่เป็นเจ้าของเอง หรือเป็นรายย่อย เป็นระบบจองทัวร์ ที่ช่วยทำให้การจัดการธุรกิจทัวร์ - ทัวร์ท่องเที่ยว ให้เป็นเรื่องง่าย
สร้างเว็บไซต์สำเร็จรูปฟรี ร้านค้าออนไลน์