# การใช้ Positioning ใน CSS: Static, Relative, Absolute, Fixed, Sticky
การออกแบบเว็บในยุคปัจจุบันต้องคำนึงถึงองค์ประกอบหลากหลาย และหนึ่งในสิ่งสำคัญที่ทำให้ออกแบบหน้าเว็บได้สวยและใช้งานได้ดีคือการจัดวางตำแหน่ง (Positioning) ขององค์ประกอบต่างๆ บนหน้าเว็บ CSS Positioning ช่วยให้เราควบคุมการแสดงผลขององค์ประกอบเหล่านี้บนหน้าเว็บได้อย่างมีประสิทธิภาพ บทความนี้จะนำคุณไปทำความรู้จักกับวิธีการใช้งาน Positioning ใน CSS อย่างละเอียดและอธิบายการใช้งาน Static, Relative, Absolute, Fixed, และ Sticky Positioning พร้อมตัวอย่างการใช้งาน
Default Position โปรดทราบว่า HTML elements จะมีลักษณะการวางตำแหน่งแบบ Static เป็นค่าเริ่มต้นเสมอ ซึ่งหมายถึงว่าจะวางตามโครงสร้างของเอกสารและไม่สามารถถูกปรับตำแหน่งโดย CSS เป็นค่าที่ใช้ง่ายและไม่จำเป็นต้องระบุ `position: static;` เพราะถือเป็นค่าเริ่มต้นอยู่แล้ว ตัวอย่างเช่น:
<div class="static">
This is a static position element.
</div>
ในโค้ดข้างต้น ไม่มีการระบุ `position` ที่เฉพาะเจาะจงไว้ ซึ่งทำให้องค์ประกอบนี้เป็น Static
Positioning แบบ Relative จะช่วยให้สามารถเคลื่อนย้ายองค์ประกอบจากตำแหน่งเดิมได้โดยอ้างอิงตำแหน่งจาก Static ปกติ โดยใช้งานคำสั่ง `top`, `right`, `bottom`, หรือ `left` ตัวอย่างเช่น:
<div class="relative">
This is a relative position element.
</div>
.relative {
position: relative;
top: 20px;
left: 30px;
}
ในตัวอย่างนี้ องค์ประกอบจะถูกเลื่อนไปทางด้านล่าง 20 พิกเซล และเลื่อนไปทางขวา 30 พิกเซล จากตำแหน่งตั้งต้นเดิมของมัน
Absolute Position จะทำให้องค์ประกอบหลุดจากการจัดวางเอกสารปกติ โดยอ้างอิงจากองค์ประกอบบรรจุที่มีการกำหนดตำแหน่งแบบ Relative หรือ Absolute เลย ตัวอย่างเช่น:
<div class="container">
<div class="absolute">
This is an absolute position element.
</div>
</div>
.container {
position: relative;
}
.absolute {
position: absolute;
top: 10px;
left: 10px;
}
นี่จะแสดงให้เห็นถึงองค์ประกอบที่มีตำแหน่งอ้างอิงจากบรรจุภัณฑ์ของมัน แทนที่จะอ้างอิงตำแหน่งจากหน้าจอทั้งหมด
Fixed Position ใช้ในการทำให้องค์ประกอบติดอยู่ที่ตำแหน่งที่กำหนดบนหน้าจอโดยไม่สนใจการเลื่อนของหน้า เป็นประโยชน์มากเมื่อต้องการทำ navigation bar ที่เลื่อนตามการเลื่อนของหน้าเว็บ ตัวอย่าง:
<div class="fixed">
This is a fixed position element.
</div>
.fixed {
position: fixed;
top: 0;
width: 100%;
}
ในกรณีนี้ องค์ประกอบจะติดอยู่ที่ด้านบนของหน้าจอตลอดเวลา
Sticky Position เป็นสิ่งที่น่าสนใจ เพราะเป็นการรวมเอาหลักการระหว่าง Relative และ Fixed เข้าไว้ด้วยกัน องค์ประกอบที่มีตำแหน่งแบบ Sticky จะเลื่อนได้ในระยะที่กำหนด และจะยึดค้างที่ตำแหน่งเมื่อถึงขีดที่ตั้ง เช่น:
<div class="sticky">
This is a sticky position element.
</div>
.sticky {
position: sticky;
top: 0;
}
เมื่อเลื่อนหน้าเว็บ องค์ประกอบนี้จะติดอยู่ด้านบนเมื่อเลื่อนผ่านจุดที่กำหนด
การเลือกใช้ตำแหน่งที่ถูกต้องจะทำให้เว็บไซต์ของคุณโต้ตอบกับผู้ใช้ได้ดีขึ้น การจัดวางองค์ประกอบอย่างสมเหตุสมผลทำให้ข้อมูลและการจัดตัวอักษรถูกแสดงออกมาอย่างชัดเจนและเข้าใจง่าย และการใช้ตำแหน่งอย่างเหมาะสมจะช่วยลดปัญหาการซ้อนกันขององค์ประกอบ ซึ่งอาจเกิดขึ้นเมื่อใช้ Absolute หรือ Fixed
ลองปรับใช้ดูว่าโครงการต่อไปของคุณสามารถยกระดับประสบการณ์ผู้ใช้งานด้วยการจัดการตำแหน่งองค์ประกอบได้อย่างไร ไม่ว่าจะเป็นการออกแบบ Web Application หรือหน้าเว็บธรรมดา การเข้าใจการใช้งาน Positioning อย่างมีประสิทธิภาพจะยิ่งทำให้คุณก้าวหน้าในสายงานการพัฒนาเว็บไปอีกขั้น
หากคุณสนใจศึกษาการเขียนโปรแกรมอย่างลึกซึ้งหรือต้องการฝึกฝนทักษะเพิ่มเติม Expert-Programming-Tutor (EPT) คือสถานที่ที่คุณสามารถทำได้ เรามีหลักสูตรที่ครบเครื่องพร้อมผู้สอนที่เชี่ยวชาญที่จะช่วยเสริมสร้างทักษะการเขียนโปรแกรมให้กับคุณในทุกด้าน ไม่ว่าจะเป็น Frontend หรือ Backend Development ไปจนถึงการพัฒนาระบบที่ใช้ machine learning!
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM