请使用Firefox或任何其他浏览器和Internet Explorer访问以下页面: http://uni-ka.the-jens.de/html/mathe4/mase2.htm
你会看到图片(公式)只在IE中可见。这是怎么做到的? 此外,你会发现它与html源无关,只与图片有关:
下载任何这些图片并尝试查看它们。一些应用程序显示白色图片,一些是黑色图片,另一些是透明图案图片。
假设您从上面的给定页面下载了第一张图片(ma63x.gif
),请复制并使用十六进制或文本编辑器打开它,并从第8行开始添加其中一些符号ÿþýû÷ïß¿
col 374或1218位(十进制)。保存后,一些应用程序现在会告诉您gif文件没有有效的格式。
假设您将操纵副本存储为my.g
,然后将这些副本保存为htm / html文件,并在Firefox中再次在IE中打开。
img src =“ma63x.gif”
img src =“my.g”
Firefox仍然不会显示图片(我使用版本3.6,也许4.0可以渲染gif)。 IE现在将向您显示原件和副本。比较两者并稍微添加和删除副本中的标记。
现在我的问题:
答案 0 :(得分:1)
我检查了页面上的第一张图片,发现我的理论是正确的。我找到了这些设置:
Viewport width = 363
Viewport height = 28
Image position = 190, 448
Image width = 363
Image height = 28
Comment: Image generated by AFPL Ghostscript (device=pnmraw)
因此,图像放在视口之外。
Chrome会扩展视口以包含图像,而IE和Opera会忽略视口并仅显示图像(或忽略图像的位置)。 Firefox执行格式指定的内容,即仅显示视口和图像中可见的部分。
根据评论,图像是使用AFPL Ghostscript创建的,后者是一个Postscript解释器,所以它可能从Postscript转换为GIF。
我编辑了文件以将图像位置更改为0,0,然后它可以正常工作:
答案 1 :(得分:0)
你的GIF有问题。
这是Chrome中没有尺寸限制的图像(大量空间是图像的一部分)
因此图像数据始终存在,但Chrome会将图像读取为较大(标记中的大小限制会强制它调整整个内容的大小),IE会将其读取为小图像。
我认为生成GIF文件的应用程序必须在头数据中存储奇数值。
对我来说修复它们的方法是打开IrfanView中的图像,然后将它们再次保存为GIF文件。