来自SQL的流式HTML不会在IE9中显示图像
我有一个html文件作为二进制文件存储在我的SQL数据库中。 该html包含图像目录,并且图像存储在服务器上的这些目录中。
Chrome,Safari,Firefox,IE7和IE8都显示图像和html文本,但IE9只是显示html文本和“位图”字样以代替图像。
这段代码输出html:
Response.Clear();
Response.CacheControl = "no-cache";
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetValidUntilExpires(false);
Response.ExpiresAbsolute = DateTime.Parse("1/1/2000");
Response.Expires = 0;
b = Compression.DeCompressByteArray(b);
Response.OutputStream.Write(b, 0, b.Length);
Response.End();
这只是显示主要输出过程的一个片段。
从输出html复制图像目录并将其放置在我的地址栏中打开图像,但IE9不希望在html内显示它们,而是显示单词“bitmap”
此外:
如何编写HTML(意思是通过C#或其他方式,或者它来自SQL Server)在这里几乎肯定无关紧要。 我建议查看源代码,确认源代码HTML(没有来自ASP.NET,SQL Server等的任何干扰)仍然存在问题,并且发布该代码(并重新标记以反映C#和SQL Server没有任何内容解决问题)。 另外请确保提及在使用兼容模式时它是否更好。
您必须指定响应的内容类型。 这些标题丢失。
请参阅http://msdn.microsoft.com/en-us/library/ms525208(v=vs.90).aspx
即,做:
Response.ContentType =“text / HTML”
要回答这个问题:
从我的SQL Server流式传输的html没有定义文档类型,因此在IE8中以怪癖模式运行。 IE9强制没有文档类型的iframe使用其父项的文档类型。
html来自excel的输出,它在发布时不会生成文档类型。
链接地址: http://www.djcxy.com/p/36519.html上一篇: Streamed html from SQL doesn't display images in IE9
下一篇: CSS codes not working as expected for Internet Explorer