2010-05-11 75 views
0

將所有條件CSS規則放在一個條件樣式表中而不是爲不同版本的IE製作多個樣式表是否是一個好主意?所有IE版本的一個有條件的CSS?

實施例:所有-IE-only.css的

<!--[if IE]> 
<link rel="stylesheet" type="text/css" href="all-ie-only.css" /> 
<![endif]--> 

內容:

selector { 
    color : green\9; /* IE8 and below */ 
    *color : yellow; /* IE7 and below */ 
    _color : orange; /* IE6 */ 
} 

使用IE下劃線/星號黑客見:http://webstandardstips.com/2008/11/18/css-hacks-for-ie-only-style-rules/

+0

你能選擇一個答案或進一步闡述你的問題嗎? – Hawken 2013-11-02 15:38:56

回答

1

優點我在看這種技術是你的服務器中只有一個樣式表,可能更容易維護。

缺點是用戶需要下載整個文件,這個文件可能會大3倍,因此需要花費更多的時間來下載和處理。

從這個公寓,我認爲沒有其他問題。

0

這是正確的使用這個所有的IE版本。但是當你使用這個時,你會發現,這不是w3c valid。一般IE創建問題.Safari,Chrome和Firefox將運行這些好。我認爲這是更好的主意,使用一個Css的所有IE版本。

+0

驗證並不重要,因爲只有IE會看到無效的CSS – Hawken 2013-11-02 15:32:22

0

只要它有效並且有效,那麼它是否在1個文件或3個,它只是個人偏好並不重要。

就個人而言,我更喜歡爲每個IE版本(如果需要)提供單獨的表單,因爲我發現它更容易組織。就像我說的,如果它的W3C complient(上帝,我們不只是愛他們),那麼它的一切都很好。

1

是的,沒關係。我認爲這成爲文件需要保存多少項的問題。如果你只是重寫1/2/3的東西,那麼單個文件就更有意義了。在某些任意點上(10件事?100行代碼),我會說這種折中方式是另一種方式,維護這三個文件更簡單。

1

如果IE 10出現並使這些黑客中的一些無效,該怎麼辦?我認爲這種方法不利於使用IE條件註釋代替黑客的目的,更多的是面向未來的實現。

Plus是否有任何優勢,除了稍微容易的維護,以及忽略HTML文件大小的節省?正如LuckyShot提到的那樣,IE用戶必須下載一個更大的瀏覽器專用文件,這已經是一種損害。