21

为了使用 Javascript 在客户端更轻松地操作各种图像,我在服务器端(在 VB 2010 中)编写了一个函数来将文件转换为我发送给客户端的 base64 字符串。

当我在 Internet Explorer 8.0 中使用 3 个不同的图像、1 个纵向和 2 个横向进行尝试时,我意识到只有纵向图像完全显示,同时两个横向图像都被截断(我只能看到图像的上半部分)。

我以为我的转换功能有一个错误,直到我用 Firefox 尝试了我的本地页面:每个图像都被 Firefox 完美显示。

所以我的问题是:这是 Internet Explorer 的一个众所周知的错误吗?如果答案是肯定的,对于那个众所周知的错误是否有众所周知的补救措施?

4

2 回答 2

14

IE8 只能处理最大 32kb 的 Base64 URI 图像。这是一个有点烦人的限制,但您仍然可以使用图标/等。请记住,无论如何,Base64 编码图像平均多出 33% 的数据发送到管道中,所以它是......嗯,你知道的,请使用你的判断。

对于任何感兴趣的人,也可以在 IE6/7 中进行这些工作(我可能会补充说,没有 32kb 的限制......):http: //venodesigns.net/2010/06/17/you-got-your- base64-in-my-css/

于 2012-04-15T06:11:06.303 回答
4

IE8 限制为 32KB。解决此问题的一种方法是仅在“图块”中提供图像,其中每个图块小于 32KB。

于 2012-10-30T22:59:36.490 回答