哪种方式加载一个巨大的图像(画布vs img vs background-image)?

Ron*_*den 12 html css html5 canvas image

我想要的是

目前我有一个png图像4000x4000.使用tinypng.org后,它变成了一个288KB的文件.

现在我想要加载图像,将它放在DOM中并且能够在其上绘制大量画布.

我测试了一些,结果震惊了我.

我测试了什么

我做了3次测试,只检查了加载速度.

  • (423ms) <canvas>
  • (138ms) <img>
  • (501ms)CSS background-image

<img>标签是最快的.

那么,使用<img>标签显示一个巨大的(背景)图像并使用一些脏CSS来绘制画布是不是很糟糕?

或者在我的情况下使用画布更好,并且不担心更长的加载时间?

Jam*_*lly 5

好问题!这是相关的:何时使用IMG与CSS背景图像?

从那篇文章中,如果人们打算打印您不会使用的页面<img>- 因为这会出现在打印件上.这同样适用于<canvas>制定background-image逻辑解决方案.

你的背景图片是如何通过CSS添加的?是内联还是通过自己的样式表?如果它使用自己的样式表,您是否尝试在测试速度之前压缩CSS

我认为这也是相关的:图像在HTML或CSS中加载速度更快吗?