2013-11-10 104 views
1

這是Internet Explorer擊敗Chrome & Firefox如果沒有錯誤?我使用OperaMini瀏覽器在移動設備上保存網頁,並將其存儲爲.mhtml文件。爲什麼MHTML沒有通過Chrome瀏覽器/ Firefox瀏覽器,但與IE瀏覽器?

後,我試圖打開我的桌面是Chrome和Firefox上的文件,但是當我在.mhtml鉻&雙擊下載的Firefox,而不是渲染.mhtml文件的文件。

最後我用IE打開IE,出乎意料地成功瀏覽了IE瀏覽器的mhtml文件。

最初我以爲.mhtml是MobileHTML,但它是MIMEHTML。已閱讀MHTML。 不過我在我的腦海一些問題分別是:

  1. 當MHTML被髮明
  2. 爲什麼鉻/ Firefox的默認情況下不支持MHTML但IE瀏覽器
  3. CSS/JS怎麼樣存儲爲只有一個文件即MHTML

您的迴應將不勝感激!

+0

3-格式在http://tools.ietf.org/html/rfc2557中定義。 2 - 歷史「爲什麼不做」的問題通常不能在SO上得到回答,除非做出決定的特定人員願意發佈...但是即使是簡單的「僅僅因爲」最有可能案件。 –

回答

2

MHTML的目的是將網頁的所有元素合併到一個文件中。 It was originally proposed in 1999More info here。這似乎是一個好主意,但由於我只能推測的原因,它並沒有被許多瀏覽器所採用,但它有一個很好的直覺。

基本上歸結爲什麼是鏈接到外部組件的HTML &與將它們全部放在一個文件中。將它全部放在一個文件中似乎更加簡單,但想象一下這個文件的大小爲1MB。這意味着內容不會呈現,直到整個MHTML文件被下載。這是非常糟糕的。誰想等內容加載?相比之下,HTML(和XHTMNL)的工作更好,因爲它們在加載時立即傳達頁面的基本結構。由於它只是文本,因此加載速度很快。然後在加載主HTML的之後,可以加載其他元素

假設您想在瀏覽器中閱讀新聞報道。您請求網頁。大部分內容由HTML文件加載。您可以在其他元素加載時開始閱讀。因此,即使在連接速度較慢的情況下,用戶體驗也會更好。

爲什麼Internet Explorer執行它?誰知道。微軟總是希望以不同的方式來控制市場。因此,也許有一些Internet Explorer使用MHTML的模糊方式,我不清楚。但是微軟一般不關心網絡標準,而只是強迫他們對世界的意願,因爲他們基本上「擁有」了商業/企業市場。

+6

我認爲格式更適合離線使用,就像OP的場景一樣,對於大多數合理的網頁來說,加載較大的文件和緩存丟失不是一個大問題。 – joews

+0

也許吧,但我可以很容易地看到MHTML被那些不知道更好的開發人員用來創建在線使用的內容。不容易理解爲什麼不遵循標準,但是對於這一點,似乎'[x] HTML'的簡單命名會立即引起混淆。相比之下,OpenDocument格式本質上意味着脫機使用。 – JakeGould

3
  1. MHTML於1999年

  2. 不像HTML,CSS和ECMAScript(JavaScript)的提議作爲一個標準,MHTML不是一個統一的標準。一些瀏覽器,如Opera和IE,已經選擇支持它。大多數其他人都有第三方擴展來爲需要它的人提供支持。少數使用其他方法來保存完整的網頁(Safari使用Apple的webarchive格式)。

  3. 查看原始RFC瞭解其工作原理的詳細信息。

1

Firefox使用unMht插件處理它們。它也可以從網上在線(在一個鏈接到一個mhtml文件),而不僅僅是在本地mhtml。

不幸的是,如果Firefox是最新的新版本3.8,但我希望這個非常有用的插件將被更新。

相關問題