問題描述:寫的網頁在瀏覽器中測試兼容問題,FF,Chrome,Edge都完美兼容(包括Edge中的仿真),但是在IE11中卻無法顯示部分圖片,並且報:DOM7009: 無法解碼 URL 處的圖像 錯誤.
問題截圖:
看到出BUG的我眼淚掉下來,沒事干在IE里面測什么測啊..但是出了問題就要解決.為什么會出現圖片無法顯示的錯誤呢?下面看一下我的解決思路:
代碼:
<div class="three"> <a href="#"><img src="image/main1-three-1.png" /></a> <a href="#"><img class="zs2" src="image/main1-three-2.png" /></a> </div>
很簡單的一段代碼,所以不可能是代碼的原因.難道是我瀏覽器的毛病?不可能啊,其他圖片都可以顯示,為什么單單是這兩張?
於是我開始了我的谷歌之路.在我谷歌了近1個小時的崩潰中,終於讓我發現了錯誤在哪.(在此感謝CSDN...)
原來可能是之前這兩張圖片的后綴是JPG,不知道什么原因改成PNG了,在IE11中就會報錯.只需要把后綴改回來就可以了.於是代碼成了這樣:
<div class="three"> <a href="#"><img src="image/main1-three-1.jpg" /></a> <a href="#"><img class="zs2" src="image/main1-three-2.jpg" /></a> </div>
相應的在本地的img標簽的后綴也改回來.刷新頁面
並且其他瀏覽器依舊兼容.
但是雖然說是解決了BUG,但是為什么呢?為什么其他瀏覽器可以,而IE11不行?難道是IE11對圖片的解碼有問題嗎?
在資料中找到這樣一句話:IE11 已經通過將解碼過程的某些步驟直接移動到 GPU(在這里可以更快並且並行地進行解碼過程)來簡化 JPG 解碼。難道是這個原因嗎?
本小白真的是不明白了,希望看到的大神能解釋一下原因?在此拜謝.