วิธีการสร้าง: แนวนำที่แสดงติดตัว/แนวนำที่ติดตัว
เรียนรู้วิธีการสร้างแนวนำที่แสดงติดตัวด้วย CSS และ JavaScript。
วิธีการสร้างแถวนำทางที่เหมือนติดเนื้อ
ขั้นที่หนึ่ง - เพิ่ม HTML:
สร้างแถวนำทาง:
<div id="navbar"> <a href="#home">Home</a> <a href="#news">News</a> <a href="#contact">Contact</a> </div>
ขั้นที่สอง - เพิ่ม CSS:
ตั้งสไตล์แถวนำทาง:
/* ตั้งสไตล์แถวนำทาง */ #navbar { overflow: hidden; background-color: #333; } /* ลิงก์ของแถวนำทาง */ #navbar a { float: left; display: block; color: #f2f2f2; text-align: center; padding: 14px; text-decoration: none; } /* เนื้อหาของหน้าเว็บ */ .content { padding: 16px; } /* ขณะที่มาถึงตำแหน่งการเลื่อน ให้เพิ่มคลาส "sticky" ให้แถวนำทางด้วย JavaScript */ .sticky { position: fixed; top: 0; width: 100%; } /* ให้เนื้อหาของเว็บมีส่วนราบด้านบนเพิ่มเติมเพื่อป้องกันการเร่งเลื่อนที่สร้างความไม่พึงประสงค์ (เพราะแถวนำทางอยู่ที่ด้านบนของหน้าเว็บ ที่มีตำแหน่ง position:fixed และ top:0) */ .sticky + .content { padding-top: 60px; }
ขั้นที่สาม - เพิ่ม JavaScript:
// ขณะที่ผู้ใช้เลื่อนหน้าเว็บ ทำงาน myFunction window.onscroll = function() {myFunction()}; // รับแถวนำทาง var navbar = document.getElementById("navbar"); // รับตำแหน่งการเลื่อนของแถวนำทาง var sticky = navbar.offsetTop; // ขณะที่คุณมาถึงตำแหน่งการเลื่อนของแถวนำทาง ให้คุณเพิ่มคลาส "sticky" ให้แถวนำทาง. ขณะที่คุณออกจากตำแหน่งการเลื่อน ลบคลาส "sticky" ออก function myFunction() { if (window.pageYOffset >= sticky) { navbar.classList.add("sticky") else { navbar.classList.remove("sticky"); } }