iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > html >如何使用CSS3来实现滚动视差效果
  • 223
分享到

如何使用CSS3来实现滚动视差效果

2024-04-02 19:04:59 223人浏览 安东尼
摘要

本篇内容主要讲解“如何使用css3来实现滚动视差效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用CSS3来实现滚动视差效果”吧!在WEB设计中,最常见

本篇内容主要讲解“如何使用css3来实现滚动视差效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用CSS3来实现滚动视差效果”吧!


WEB设计中,最常见的实现视差效果的方式是使用Jquery插件。但这种方法有一些弊端。这些插件大多都是在window对象的scroll事件上放置监听器。这会导致javascript需要处理大量的事件触发(处理scroll事件很容易造成浏览器性能问题,使用时需要非常小心。)移动不同的层,计算背景的位置,设置图片的属性,这都引起了大量的DOM操作。

简言之,使用JavaScript来实现视差效果会让页面的滚动出现性能问题,出现卡顿。

background-attachment属性回顾
background-attachment -- 定义背景图片随滚动轴的移动方式
取值: scroll | fixed | inherit
scroll: 随着页面的滚动轴背景图片将移动
fixed: 随着页面的滚动轴背景图片不会移动
inherit: 继承
初始值: scroll
继承性: 否
适用于: 所有元素
background:背景.attachment:附着.
示例

CSS Code复制内容到剪贴板

  1. body    

  2. {   

  3.  background-image:url('list-orange.png');   

  4.  background-attachment:fixed;   

  5.  background-repeat:repeat-x;   

  6.  background-position:center center;   

  7. }  

屏幕的背景图片为一条橙色线.随着滚动轴移动,橙色线的视觉位置不变.
CSS background-attachment 属性示例

使用background-attachment: fixed实现视差效果

为什么只有一小部分人知道,这种效果实际上可以用CSS实现。

为了实现视差效果,多个背景图片必须放置在不同的元素上。这些背景图需要定义成background-attachment: fixed。通过设定background-attachment,我们可以改变背景图像的效果和位置。

background-attachment的缺省值是scroll,也就是背景图片和内容的位置是相对静止的。这我们大家都见过,当我们上下滚动一个网页时,背景和内容一起滚动。

当把background-attachment设置成fixed时,事情会变得有趣。fixed是说背景图片不随内容一起滚动,而是跟窗口保持静止。也就是说,当你拖动滚动条时,背景图片没有变化。这就能够产生漂亮的视差效果。

让我看一个实际实现:

CSS Code复制内容到剪贴板

  1. <!-- Four containers for setting the background images -->   

  2. <div class="parallax">   

  3.   <div class="bg__foo">foo</div>   

  4.   <div class="bg__bar">bar</div>   

  5.   <div class="bg__baz">baz</div>   

  6.   <div class="bg__bazz">bazz</div>   

  7. </div>   

  8. // setting base styles to image containers   

  9. [class*="bg__"] {   

  10.   height: 50vh;   

  11.   

  12.   text-indent: -9999px;   

  13.   

  14.     

  15.   background-attachment: fixed;   

  16.   

  17.     

  18.   background-position: center center;   

  19.   

  20.     

  21.   background-size: cover;   

  22.   

  23.     

  24.   &:nth-child(2n) {   

  25.     box-shadow: inset 0 0 1em #111;   

  26.   }   

  27. }   

  28.   

  29. .bg__foo {   

  30.   background-image: url(   

  31.     /file/imgs/upload/202210/19/1otmd1mx5th.jpg   

  32.   );   

  33. }   

  34.   

  35. .bg__bar {   

  36.   background-image: url(   

  37.     /file/imgs/upload/202210/19/kske5l5dym1.jpg   

  38.   );   

  39. }   

  40.   

  41. .bg__baz {   

  42.   background-image: url(   

  43.     /file/imgs/upload/202210/19/usdchdmt1di.jpg   

  44.   );   

  45. }   

  46.   

  47. .bg__bazz {   

  48.   height: 100vh;   

  49.   

  50.   background-image: url(   

  51.     /file/imgs/upload/202210/19/1otmd1mx5th.jpg   

  52.   );   

  53. }  

关于这种技术的浏览器兼容情况,你可以参考这里,基本上,现代浏览器和IE9+的浏览器都支持。


观看演示


对我个人而言,我更喜欢CSS技术实现的视差效果,而不是用JavaScript。用CSS实现,是受浏览器原生支持,没有编程逻辑,没有对DOM额外的操作,使得整个方案非常的简洁漂亮。

即使是CSS实现的视差效果,也会给浏览器带来负担。

background-attachment: fixed会导致浏览器更多的渲染,也会影响浏览器滚动的效率。所以,开发时一定要多做测试,视性能情况而决定实现的效果。

到此,相信大家对“如何使用CSS3来实现滚动视差效果”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 如何使用CSS3来实现滚动视差效果

本文链接: https://www.lsjlt.com/news/76800.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何使用CSS3来实现滚动视差效果
    本篇内容主要讲解“如何使用CSS3来实现滚动视差效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用CSS3来实现滚动视差效果”吧!在web设计中,最常见...
    99+
    2024-04-02
  • JavaScript如何实现视差滚动效果
    本文小编为大家详细介绍“JavaScript如何实现视差滚动”,内容详细,步骤清晰,细节处理妥当,希望这篇“JavaScript如何实现视差滚动”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。概念视差滚动效果是一种...
    99+
    2023-07-05
  • CSS怎么实现视差滚动效果
    这篇文章主要介绍“CSS怎么实现视差滚动效果”,在日常操作中,相信很多人在CSS怎么实现视差滚动效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS怎么实现视差滚动效果”...
    99+
    2024-04-02
  • Android中如何实现视差滚动
    这篇文章将为大家详细讲解有关Android中如何实现视差滚动,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是视差滚动?视差滚动原本是一个天文学术语,当我们观察星空的时候,离我们比较远的星星移动速度比较...
    99+
    2023-06-22
  • 如何使用CSS3实现动画效果
    这篇文章主要为大家展示了“如何使用CSS3实现动画效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用CSS3实现动画效果”这篇文章吧。浏览器支持Inte...
    99+
    2024-04-02
  • CSS3如何实现无限循环的滚动效果
    这篇文章主要讲解了“CSS3如何实现无限循环的滚动效果”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS3如何实现无限循环的滚动效果”吧!1. 使用CSS3来实现若要用CSS3的属性实现的...
    99+
    2023-07-04
  • 如何使用CSS3实现无限循环的无缝滚动效果
    这篇文章将为大家详细讲解有关如何使用CSS3实现无限循环的无缝滚动效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1. 使用CSS3来实现若要用CSS3的属性实现的话,...
    99+
    2024-04-02
  • 如何使用CSS3实现3D旋转透视效果
    本篇内容介绍了“如何使用CSS3实现3D旋转透视效果”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!你将学到...
    99+
    2024-04-02
  • CSS3中怎么实现滚动条动画效果
    本篇文章给大家分享的是有关CSS3中怎么实现滚动条动画效果,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。<body>  ...
    99+
    2024-04-02
  • Css3中如何实现视觉效果
    小编给大家分享一下Css3中如何实现视觉效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、单侧阴影1、box-shadow属...
    99+
    2024-04-02
  • jQuery如何实现滚动效果
    这篇文章主要介绍了jQuery如何实现滚动效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 图片轮播:原理如下: 假设有三张图片,三张...
    99+
    2024-04-02
  • 如何使用html5+css3来实现slider切换效果
    这篇文章主要介绍“如何使用html5+css3来实现slider切换效果”,在日常操作中,相信很多人在如何使用html5+css3来实现slider切换效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用...
    99+
    2024-04-02
  • css如何实现滚动效果
    本篇内容主要讲解“css如何实现滚动效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css如何实现滚动效果”吧!css通过overflow属性设置滚动条示例:<html><h...
    99+
    2023-07-04
  • 如何实现css3动画效果
    这篇文章主要介绍“如何实现css3动画效果”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何实现css3动画效果”文章能帮助大家解决问题。 ...
    99+
    2024-04-02
  • 如何使用纯CSS3的transform实现心动效果
    这篇文章主要介绍如何使用纯CSS3的transform实现心动效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!心动送一个爱心表示我对你心动,使用纯 CSS3 的transform实现:css 部分html,body...
    99+
    2023-06-27
  • 如何用CSS实现平滑滚动效果
    如何用CSS实现平滑滚动效果在网页设计与开发中,滚动效果是一种非常常见且炫酷的效果,能够为用户带来更好的体验。而实现平滑滚动效果,可以通过CSS的一些技巧来实现。本文将介绍如何使用CSS来实现平滑滚动效果,并提供具体的代码示例。一、使用锚点...
    99+
    2023-11-21
    平滑 CSS 滚动效果
  • 如何用javascript实现文字滚动效果
    这篇文章主要介绍“如何用javascript实现文字滚动效果”,在日常操作中,相信很多人在如何用javascript实现文字滚动效果问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2024-04-02
  • CSS3如何实现loading动画效果
    这篇文章主要为大家展示了“CSS3如何实现loading动画效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“CSS3如何实现loading动画效果”这篇文章吧...
    99+
    2024-04-02
  • html5中如何使用requestAnimationFrame实现平滑滚动效果
    这篇文章将为大家详细讲解有关html5中如何使用requestAnimationFrame实现平滑滚动效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用request...
    99+
    2024-04-02
  • 如何使用JavaScript实现字体左右滚动效果
    随着社会的不断发展,前端开发技术也日益成熟。其中,JavaScript作为最主要的Web前端开发语言之一,拥有着丰富的扩展性和可操作性。在实际开发中,我们可以使用JavaScript来实现各种各样的动态效果,如字体左右滚动效果。本篇文章将详...
    99+
    2023-05-14
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作