2013-11-20 32 views
0

我正在尋找一個HTML5和CSS3模板以及我的網站上的很多jquery插件。比方說,我想讓我的網站適應IE5,IE6等Modernizr可能是有用的,以實現我的目標。我的問題是,如果我需要每種風格不同的風格不支持IE5,IE6等如何使用Modernizr將HTML5模板改編爲IE5,IE6等?

在這種情況下,如果我得到一個偉大的HTML5模板,我會工作很多適應每個風格適用於IE5,IE6等。

您對此有何看法?我怎麼能避免寫出不同的風格?或者如果我錯了,請讓我知道。

在此先感謝。

+0

使用Modernizr測試現代功能(CSS3,HTML5,JS)的兼容性/支持,以及何時測試對舊版IE代碼等平臺返回負面消息時,使用條件解決方法或添加聚合填充。 – Ennui

+0

HTML5 + IE5 ??真?只要你將IE5加入混音中,你就會以怪癖模式工作。這意味着要拋棄HTML5的任何努力,而且這意味着需要編寫大量的CSS hack才能使其跨瀏覽器工作。拿掉IE5的需求,你可能會用現代化的工具幫你解決這個問題。但是,如果你必須支持IE5,沒有任何東西 - 即使是現代化的 - 也不會讓你免受很多痛苦。 – Spudley

+0

如果你必須支持IE5,我的建議是把它寫成一個完全獨立的網站,它有自己的HTML,自己的CSS和所有東西。主站點檢測IE5並重定向到它。讓IE5遠離主代碼庫。即使這意味着要做所有事情,它仍然比試圖讓你的標準代碼在IE5中運行得更好。 – Spudley

回答

1

首先關閉: 一個HTML5模板通常會有一個DOCTYPE,它是html,而不是IE5或IE6預期的那些漂亮的過渡或嚴格類型之一,所以你將不得不解決這個問題。

一個現代的模板可能會很好地使用最新版本的JQuery,或者可能有其他庫在後來的JQuery版本中使用功能,這不適合您,因爲這些瀏覽器的支持已從最新JQuery庫。

現代模板/ CSS中使用的選擇器和樣式很可能不會在IE5或IE6中工作,並且有很多JavaScript功能不存在於現代網站將使用的IE5中。

在IE5/IE6上最終呈現的HTML(如果你可以讓網站工作的話)看起來並不像現代瀏覽器上的那樣,並且試圖修復所有這些風格的所有風格導致你一些問題。

如果你必須這樣做:

  • 開始用一個非常簡單的幾乎空白的佔位網站
  • 檢測IE5和IE5早期和加載這些IE的具體內容(JavaScript和CSS)

  • 如果其中之一

  • 拉你所需要的所有polyfill代碼,以儘可能地獲得瀏覽器功能。
  • 甚至不要嘗試使佈局或樣式像IE5/6版本一樣。只有這些瀏覽器的用戶無法看到/運行其他版本,並且沒有任何可比較的內容。

  • 否則加載現代網站版本。

理想情況下,你想使用的路由/ URL重寫推請求一組IE5/IE6網頁,然後這些映射到服務器/ API後端。

讓你的URL變得像

http://mysite/Page   - Normal site 
http://mysite/ie5/Page  - IE5 version 

到底它可能要少得多做這樣然後試圖應對一個巨大的一套複雜的標記每個瀏覽器版本。

保持這兩個獨立的優點之一是,當選擇停止支持IE5時,您可以將這些映射重定向到升級頁面,稍後當您退出IE6時也會這樣做。這可能會包含所有黑客攻擊,附加代碼,不同的標記和UI錯誤,只有這些瀏覽器不會影響您的主要開發。

相關問題