【问题标题】:Animating the <body> background using CSS and skrollr.js使用 CSS 和 skrollr.js 为 <body> 背景设置动画
【发布时间】:2014-06-14 20:03:19
【问题描述】:

我想使用skrollr.js&lt;body&gt; 标记的background-position CSS 属性设置动画。我希望它在页面滚动时稍微向上移动背景图像,以增加一点趣味。但是,使用这个...

data-0="background-position: 0px 0px;" data-1000="background-position: 0px -250px;"

...不工作。

我尝试使用&lt;div&gt; 来完成这一壮举(为其background-position 设置动画),但这并没有给我想要的效果。当我为&lt;div&gt;background-property 设置动画时,background-position 工作正常;但是一旦&lt;div&gt; 滚出视线,div 后面的任何东西都会变得可见,这是我不想要的。有什么建议吗?

【问题讨论】:

标签: javascript css animation skrollr


【解决方案1】:

好的,我找到了导致问题的原因。我的 CSS 是这样写的:

background: url(/images/mainBG.jpg) no-repeat center fixed!important;

我需要删除“!important”,它就像一个魅力。但是......现在我注意到另一个问题(如果我得到解决,我会在这里发布答案)。我正在使用 MasterPages 将其实现到 4.0 C# .net 网站中(请参阅此处的实际操作:brugrill.ntxdesigns.com)。考虑到所有 .aspx 页面的长度都不同,我不能在 MasterPage 中使用 skrollr.js,因为它会根据您在“data-”属性中放置的内容来设置页面的高度,所以如果页面长于“data-”属性的像素位置(例如页面为 5000 像素,“data-”属性为 1000),背景滚动在页面完成滚动之前停止。如果“data-”属性长于页面的像素长度,则页面在应该停止后继续滚动,这看起来很糟糕(如您在上面的链接中所见)。我希望我可以使用带有this.Page.Master.FindControl 的代码隐藏来查找主体控件标签并将“data-”属性修改为我需要的值。

有没有办法通过 javascript、jquery 或其他方式获取页面的当前像素长度并在“data-”属性中使用该值?然后我就不必对这些数据进行硬编码,如果页面增长,价值就会增长。任何建议都会很棒!

【讨论】:

  • 最好将您的后续问题作为新问题发布,以免其答案与此处的答案混淆。
猜你喜欢
  • 2013-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-18
  • 2016-01-02
  • 1970-01-01
  • 1970-01-01
  • 2011-06-17
相关资源
最近更新 更多