隨著Web2.0的迅速發展,越來越多的網站開始采用整屏滾動的設計風格。而在實現整屏滾動效果中,CSS起到了重要的作用。下面我們就來了解一下如何使用CSS來實現整屏滾動效果。
html, body{ margin:0; padding:0; height:100%; overflow:hidden; } .section{ width:100%; height:100%; position:absolute; left:0; top:0; overflow:hidden; }
首先,我們需要設置html和body的樣式,將其高度設置為100%,并且取消頁面的滾動條。接著,我們需要為每一屏設置一個.section類,將其高度設置為100%,寬度為頁面寬度,并且將其定位到頁面左上角。
var length=$('.section').length; //獲取頁面中.section的個數 var i = 0; $(document).on('mousewheel DOMMouseScroll', function (e) { if(i<0){i=0} //頁面初始狀態,左右滑動 if (e.originalEvent.wheelDelta >0 || e.originalEvent.detail< 0) { i--; // 向上滑動 if (i< 0) { $('body,html').animate({ scrollTop: 0 }, 500); i = 0; // 滑倒第一屏時向上滑動會回到頂部 return false; } var top = $('.section').eq(i).offset().top; //獲取當前屏的偏移值 $('body,html').animate({ scrollTop: top }, 500); // 滑動動畫 } else { i++; // 向下滑動 if (i >= length) { i = length - 1; $('body,html').animate({ scrollTop: $(document).height() }, 500); //滑倒最后一屏時向下滑動會到底部 return false; } var top = $('.section').eq(i).offset().top; //獲取當前屏的偏移值 $('body,html').animate({ scrollTop: top }, 500); // 滑動動畫 } })
接著,在頁面中引入jquery庫,使用jquery來為頁面添加滾輪事件。
首先獲取頁面中.section的個數,將計數器i初始化為0。接著,根據滾輪事件的方向(向上或向下),計數器i進行加減操作。在進行滑動的過程中,需要對當前屏的偏移值進行計算,并使用animate方法來實現滑動動畫。注意,在滑動到第一屏和最后一屏時,需要分別回到頁面頂部和底部。
最后,我們需要在頁面中添加一些額外的CSS樣式,比如設置頁面中的背景顏色、字體樣式等,來讓整屏滾動的頁面更加美觀。
通過以上的步驟,我們就可以實現整屏滾動效果了。當然,如果您想要實現更加豐富的滾動效果,可以在滑動的過程中,對每一屏的內容進行自定義的動畫效果。
上一篇css整個邊框距離
下一篇css整張背景 多邊形