网页滚动效果是现代网页设计的重要元素之一,为网页增加了动态感和视觉效果。在本文中,我们将会介绍如何使用HTML和CSS创建简单的网页滚动效果,同时提供易于理解的代码案例。
首先,我们需要创建一个基本的HTML结构,如下所示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | < html > < head > < title >网页滚动效果</ title > < style > /* CSS代码将在后文中提供 */ </ style > </ head > < body > < div class = "container" > < div class = "section" > < h3 >第一部分</ h3 > < p >这是第一部分内容。</ p > </ div > < div class = "section" > < h3 >第二部分</ h3 > < p >这是第二部分内容。</ p > </ div > < div class = "section" > < h3 >第三部分</ h3 > < p >这是第三部分内容。</ p > </ div > </ div > </ body > </ html > |
在以上HTML结构中,我们创建了一个名为“container”的div容器,其中包含了三个名为“section”的div块,每个div块中都包含了一个标题和一段描述文字。
接下来,我们需要为网页滚动效果添加CSS样式,如下所示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | html, body { margin : 0 ; padding : 0 ; } .container { width : 100% ; height : 100 vh; position : relative ; } .section { width : 100% ; height : 100 vh; position : absolute ; top : 0 ; left : 0 ; display : flex; justify- content : center ; align-items: center ; flex- direction : column; text-align : center ; } .section h 3 { font-size : 3 rem; margin-bottom : 2 rem; } .section p { font-size : 1.5 rem; } |
在以上CSS样式中,我们为网页滚动效果设置了一些基本的样式,包括设置全局的margin和padding为0,设置container容器的宽度为100%、高度为100vh(视口宽度),并设置其position属性为relative。设置section块为绝对定位,宽度为100%、高度为100vh,设置其position属性为absolute,同时设置其display属性为flex,使得标题和描述文字能够在垂直和水平方向上居中显示。
最后,我们需要使用Javascript函数来实现网页滚动效果。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | function scrollSection() { const sections = document.querySelectorAll( '.section' ); const windowHeight = window.innerHeight; sections.forEach(section => { const sectionTop = section.getBoundingClientRect().top; if (sectionTop < windowHeight) { section.classList.add( 'active' ); } else { section.classList.remove( 'active' ); } }); } window.addEventListener( 'scroll' , scrollSection); scrollSection(); |
在以上Javascript函数中,我们首先使用document.querySelectorAll函数获取所有名为“section”的div块,然后使用window.innerHeight获取当前视口的高度。接着,我们使用forEach循环遍历所有的section块,使用getBoundingClientRect方法获取每个section块距离视口顶部的距离,然后判断该距离是否小于视口高度,若小于,则为该section块添加名为“active”的class,否则则移除该class。
至此,我们已经成功地创建了一个简单的网页滚动效果。通过以上的HTML、CSS和Javascript代码,我们可以学习到如何通过函数、函数细节用法参数来实现网页滚动效果。希望本文对于初学者有所帮助。
本文为翻滚的胖子原创文章,转载无需和我联系,但请注明来自猿教程iskeys.com