来自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运行时,SQL的html(和图像)输出在所有浏览器上都可用。
  • 嵌入时,图像在IE9中显示,如果我有兼容模式(但打破其他东西)。

  • 如何编写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