Microsoft Edge Web 浏览器中未显示带有本地文件的 Img 标签:/// URL

Img tag with local file:/// URL is not shown in the Microsoft Edge web browser

在我的桌面应用程序中,我创建了一个临时 HTML 文件(旨在让用户打印报告),然后通过默认 Web 浏览器显示该文件。此 HTML 文件保存在临时文件夹中,例如:C:/Users/UserName/AppData/Local/Temp

这适用于所有网络浏览器(令人惊讶的是甚至包括 IE),但微软的另一个创作 Edge 给我一个空白图像图标

对于以下内容:

<img width='24' height='24' style='border: none;' alt='Print'
src="file:///C:/Users/UserName/AppData/Local/Temp/printicon.gif"></img>

知道为什么会失败吗?

PS。显然 gif 文件存在并且可以打开。

跟进: 经过进一步测试,我发现了 Edge 屏蔽我的图像的原因。我将以下内容添加到 HTML 标记

的顶部
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0038)http://www.samplewebsite.com/index.htm -->
<html>
<head>

防止 IE 显示:

请注意,该消息的原因只是 "Print" 按钮的这行代码:

javascript:window.print();

因此,如果我删除 <!-- saved from ... --> 行,Edge 似乎会显示我的图像。但我显然做不到,因为我需要它与旧版 IE 一起工作。

我想我已经解决了(一旦我知道是什么原因造成的。)实际上发现 this page 给了我线索。所以如果我这样做,它将与 Edge 和 IE 一起工作:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0016)http://localhost -->
<html>

我遇到过类似的问题 我的 my-file.html 已损坏 我将 my-file.html 的内容复制到另一个 .html 文件,问题解决了,我的图像也显示出来了 花了两个多小时:)