如何创建视差滚动效果页面
1.什么是视差滚动效果?
视差滚动(Parallax Scrolling)是指网页在多层背景下以不同的速度移动,形成立体的运动效果,带来非常出色的视觉体验。
2.如何实现视差滚动效果?
我们可以通过调用JavaScript的一个库文件Skrollr.js。Skrollr是一个使用了HTML5和CSS3的轻量级JavaScript视差滚动类库。它可以让你快速打造出视差滚动的效果,在使用的时候我们就会发现,它的特点就像是设置每一个关键帧的CSS属性,然后自动形成视差滚动的效果。最最重要的一点是,使用此类库时不用写复杂的JS代码以及兼容各种主流浏览器和移动终端。
3.如何使用?
在写页面的时候,在</body>之前加入Skrollr的库文件。切记,是在<body>的结束标签前面添加哦!
4.调用库文件
<script src="skrollr.min.js"></script> <script> var s = skrollr.init();//使用skrollr.init()调用skrollr库 </script>
准备工作做好了以后,我们就可以开始代码了,下面通过一个简单的小例子给大家讲解。以此类推,相信你也会很快掌握!
我们来演示一下页面中的某个元素的背景随着页面滚动的变化效果。当用户向下滚动页面500像素时,div的背景色会发生相应的变化。这里要注意的是,对背景颜色的设置不用color:#ff0的格式,而是用rgb()定义颜色值。
5.代码演示
<div data-0="background-color:rgb(0,0,255);" data-500="background-color:rgb(255,0,0);">我来实现视差滚动
</div>
这里的data-0和data-500就类似我们设置的每一帧的不同格式。当然,要想实现页面滚动的效果,我们还需要加上别的用来填页面的元素,例如加几个P标签,并设置它们的高度,为的是把页面撑起来,当然这里我们只是为了更好的理解。
相信现在,你应该理解了滚动视差的实现过程了吧,懂得了方法后,我们就可以活学活用了,我们可以设置不同的CSS属性,实现不同的炫酷效果。例如用CSS3的旋转特效:
<div data-0="background-color:rgb(0,0,255);transform:rotate(0deg);" data-500="background-color:rgb(255,0,0);transform:rotate(360deg);"> 我来实现视差滚动 </div>
好啦。今天就到这里了,希望对你有帮助哦!