【问题标题】:Will an image load if it has its CSS set so that visibility is hidden?如果图像设置了 CSS 以隐藏可见性,它会加载吗?
【发布时间】:2010-10-09 08:40:51
【问题描述】:

如果图像的 CSS 设置为隐藏可见性,图像会加载吗?

【问题讨论】:

    标签: css image


    【解决方案1】:

    是的,它仍然会被加载并保存在 DOM 中。那你就可以用JS快速展示了!

    【讨论】:

      【解决方案2】:

      是的 - 我已经使用它来预加载将使用 Javascript 显示的图像。

      您可以通过实验验证这一点

    • 创建两个相对较大的图像,a.jpg 和 b.jpg
    • 在页面上放置一张图片,来源为 a.jpg
    • 编写一些 javascript 以在单击链接时将图像的源更改为 b.jpg(例如,b.jpg 的缩略图)
    • 加载页面。请注意,当您单击链接时,您必须等待 b.jpg 加载。
    • 现在编辑页面,使 b.jpg 首先包含在页面中,但 CSS 属性为 visibility: hidden
    • 使用 Ctrl+F5 重新加载页面。完成后,再次点击链接。
    • 请注意,现在 b.jpg 的加载速度要快得多。那是因为它是预加载的。
    • 【讨论】:

      • 错误。为什么不简单地设置一个带有不存在图像的小 html 文档,然后查看服务器的日志?
      • 因为您可能没有自己的服务器。然而,Firebug 也可以在 NET 面板中为您提供这些。
      • 在任何东西上安装 HTTP 服务器大约需要一分钟......没有理由测试任何最终将像这样在 HTTP 上运行的东西。
      • @PimJager - 好点。 Firebug 或 Chrome 开发工具中的 Net 面板是一种更好的查看方式。它还会显示明显的加速是否是因为图像被缓存。
      【解决方案3】:

      不同的浏览器可能会有不同的行为。

      【讨论】:

        【解决方案4】:

        这完全取决于浏览器及其环境(例如,手机等内存不足的情况)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-09-16
          • 1970-01-01
          • 2020-02-28
          • 1970-01-01
          • 2015-08-22
          • 2010-12-19
          • 2012-09-15
          • 2014-04-15
          相关资源
          最近更新 更多