前言
前幾天做項目時,發現一個奇怪的現象,從后台獲取的圖片,在IE瀏覽器端,有一部分不會顯示,仔細研究發現是圖片本來是.jpg格式,后台傳過來的圖片后綴已經被改成了.png格式或者其它格式導致IE瀏覽器無法識別。
正文
我項目中現象如下圖:

圖片后綴名問題
圖片后綴名和代碼中不一致或者圖片本來是.png格式自己手動更改成了.jpg或者其它格式導致IE瀏覽器無法識別。
圖片顏色編碼問題
圖片可能是CMYK顏色,而IE瀏覽器不識別CMYK模式的圖片,這時需要更改為RGB模式(可借助PS等軟件)。
web.config配置問題
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="X-Content-Type-Options" value="nosniff" />
</customHeaders>
</httpProtocol>
</system.webServer>
移除web.config文件中的<add name="X-Content-Type-Options" value="nosniff" />這句話導致了圖片在IE中不能正常顯示。
圖片過大,瀏覽器內存問題
本次所用圖片實際像素大小高達300M,初步懷疑是這種情況。后來實測當像素高於3800x8608(像素大小93.6M)時(受瀏覽器占用內存影響,測試結果有所偏差3800±15),IE瀏覽器無法打開圖片。 同樣可以借助ps等軟件處理圖片。
ps:ps的批處理功能還是非常強大的。
結尾
遇到問題不能鑽牛角尖,感覺我自己代碼寫錯了。研究了一天,結果不是代碼問題。。。。。。手動狗頭、、
