【发布时间】:2015-10-17 22:49:16
【问题描述】:
假设我有一个名为 - myImage.png
的图像
我将它与<img> 标签或background-image 一起使用,这并不重要:
<img src="myImage.png" />
所以我决定将其转换为 base 64 图像:
.myImage {
background: 0 no-repeat;
background-image: url(data:image/jpeg;base64,/9j/4AA...SOV//2Q==);
}
图像作为 .png 文件的正常大小,例如 - 60KB。
然后如果我创建一个 .css 文件,粘贴上面提到的 .myImage 的代码块并保存,保存文件后它的大小也将是 - 60KB。
现在我的逻辑是,两个图像将具有相同的性能和相同的服务器响应,因为它们具有相同的大小,但我开始怀疑并想知道 base 64 图像是否真的会更快,更轻巧,性能更好。
【问题讨论】:
-
您确定它们的尺寸相同吗?你检查了吗?
-
实际上它们的大小不一样,带有 base 64 图像的 .css 文件似乎更大。这只是一个例子。
-
base64 通常会大 30% 左右,我认为这是在大多数情况下不使用它的充分理由。
-
感谢@SteveSanders,这很有帮助,而且切中要害。