我的固定背景使网站滚动速度非常慢,我该怎么做才能改进它?

时间:2011-08-11 23:05:51

标签: css background vertical-scrolling smooth-scrolling

我使用下面的CSS改变了我的讨论论坛的背景

http://forum.antinovaordemmundial.com

html {
    background: url(http://antinovaordemmundial.com/mystuff/logo_blog.jpg) no-repeat center center fixed;
    background-image: url(http://antinovaordemmundial.com/mystuff/logo_blog.jpg);
    background-repeat-x: no-repeat;
    background-repeat-y: no-repeat;
    background-attachment: fixed;
    background-position-x: 50%;
    background-position-y: 50%;
    background-origin: initial;
    background-clip: initial;
    background-color: initial;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

图像为1600x711和88k。页面的滚动现在非常慢。 CSS是否有问题,或者图像应该以某种方式变小?

编辑:我尝试更改为:

body {        
    color: #000;
    font-family: Verdana, Arial, Sans-Serif;
    font-size: 13px;
    text-align: center; /* IE 5 fix */
    line-height: 1.4;
    background-attachment: fixed;
    background-clip: initial;
    background-color: #51010E;
    background-image: url(http://antinovaordemmundial.com/mystuff/logo_blog.jpg);
    background-origin: initial;
    background-position: initial initial;
    background-repeat: initial initial;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
}

但滚动时仍然很慢。

8 个答案:

答案 0 :(得分:12)

我遇到了同样的问题并使用这个jQuery插件解决了它: http://srobbin.com/jquery-plugins/jquery-backstretch/

它不使用任何CSS3属性,但它工作正常,并且在Chrome 13或Firefox 6上没有任何性能问题。

答案 1 :(得分:9)

我以为我会在这里做出贡献。而不是使用background-attachment:fixed;使用:之前和位置:固定;问题排序。我遇到了同样的问题。

在此处阅读更多内容:http://fourkitchens.com/blog/article/fix-scrolling-performance-css-will-change-property

答案 2 :(得分:8)

当我删除background-size属性时,问题就消失了。我认为这是导致问题的大图像的缩放。如果这不起作用,只需完全删除背景图像。但是,我从来没有听说过大的背景图像导致滞后。

答案 3 :(得分:0)

此外,将以下样式应用于html标记会显着改善WebKit浏览器中的帧速率,包括Chrome:

-webkit-transform: translate3d(0,0,0);

据我所知,这适用于(大)背景照片和不连贯滚动的所有情况。

答案 4 :(得分:0)

压缩图像(缩小尺寸),解决了我的问题,强烈建议使用像Radical Image Optimization Tool (RIOT)这样的工具,非常有效且容易。

在linux上,这可以使用GIMP完成,您也可以删除图片的元数据以缩小尺寸,使用exiftool之类的工具。

答案 5 :(得分:0)

问题实际上是背景附件固定值,如果您将其更改为背景附件:滚动移动设备它应该修复延迟。

答案 6 :(得分:0)

在遇到相同问题时,将图像文件类型更改为SVG可以大大改善我的网站的性能!

答案 7 :(得分:0)

在固定附件的情况下,使背景大小为99.9%而不是100%或覆盖

background-size : 99.9%;