【问题标题】:Why do images on the web load line by line?为什么网页上的图片是逐行加载的?
【发布时间】:2016-02-26 23:49:56
【问题描述】:

为什么网页上的图片是逐行加载的?为什么不从左上像素到右下像素?是关于浏览器还是css默认值?是否可以将其更改为在加载时或加载整个图像后显示像素?

【问题讨论】:

  • 像素是什么意思?
  • @Chris 我的意思是为什么不逐像素加载?

标签: css image browser web


【解决方案1】:

这与它们在 html 文档中出现的顺序有关。页面中的定位,与加载优先级无关。

【讨论】:

    【解决方案2】:

    您可以使用 Javascript 或 JQuery,如下所示:

    $("#img").hide();
    $('#img').load(function(){
      $('#img').show();
    });
    

    基本上它仅在加载整个图像时才显示图像。

    【讨论】:

      【解决方案3】:

      您是在谈论图像本身是如何加载/渲染的?它混合了:

      • 每个浏览器中的实现细节
      • 图像的格式(哪种格式,gif/jpeg/png

      你能用 CSS 控制它吗?不,不是。您可能会使用 CSS 动画/过渡来制作一些效果,但不是逐个像素。至少不是以一种有效的方式。

      【讨论】:

        【解决方案4】:

        这取决于图像格式,有些可以逐行加载,有些是“渐进式”并且可以“块”加载(首先是模糊的像素化图像可见,然后加载更多数据并变得不那么模糊,并且以此类推),有些必须完全加载才能显示。

        【讨论】:

        • 你能说出 jpeg、png 和 gif 格式的行为吗?
        猜你喜欢
        • 2011-09-27
        • 1970-01-01
        • 1970-01-01
        • 2010-11-19
        • 1970-01-01
        • 2014-10-25
        • 1970-01-01
        • 1970-01-01
        • 2018-04-15
        相关资源
        最近更新 更多