導航置頂是網站開發中常見的需求。在頁面滾動時,導航欄固定在頁面頂部,以便用戶隨時訪問。
下面是常用的導航置頂 css 代碼:
nav { position: fixed; top: 0; width: 100%; z-index: 999; }
這個代碼使用了 CSS 定位屬性fixed
,可以讓元素在頁面固定位置顯示。同時,top: 0;
將元素放置在頁面最頂端,width: 100%;
讓元素寬度與窗口寬度一致,z-index: 999;
則表示該元素在 z 軸上的顯示優先級最高。
如果希望在導航到達頁面頂部時恢復正常布局,可以在 JavaScript 中監聽頁面滾動事件:
var nav = document.querySelector('nav'); var navOffsetTop = nav.offsetTop; window.addEventListener('scroll', function() { if (window.pageYOffset >= navOffsetTop) { nav.classList.add('fixed'); } else { nav.classList.remove('fixed'); } });
這段代碼首先獲取導航元素的offsetTop
,即元素頂部離頁面頂部的距離。然后監聽頁面滾動事件,當頁面滾動距離達到導航元素頂部距離時,給導航元素添加fixed
類名,表示固定在頁面頂部。否則移除該類名,元素恢復正常布局。