2013-01-22 117 views
1

我使用pie.htc來允許我在舊版本的IE中使用我的網站上的半徑拐角和陰影。CSS Pie在IE8中使頁面加載非常緩慢

麻煩的是它似乎讓IE運行非常緩慢。

這裏是我的代碼的例子...任何人都可以看到我可以改善這個嗎?

div.myDiv { 
    -webkit-border-radius: 5px;  
    -moz-border-radius: 5px;  
    border-radius: 5px; 
    -webkit-box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.4); 
    box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.4); 
    behavior: url(/PIE.htc); 
} 
+2

我實際上建議你不要使用CSS3 Pie,最好是省略圓角或者使用圖片。我對CSS3餅的使用經驗是,它總是需要一段時間才能加載,或者有時需要刷新才能正常工作。只是我2美分。 –

+1

您不需要任何這些供應商前綴 – Evgeny

回答

0

嘗試一下本作的改變異步與DOM一起

div.myDiv 
{ 
    border-radius: 5px; 
    -ms-border-radius: 5px; 
    -webkit-border-radius: 5px;  
    -moz-border-radius: 5px;  
    box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.4); 
    -ms-box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.4);  
    -webkit-box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.4); 
    -moz-box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.4); 
    behavior: url(/PIE.htc); 
    position:relative; 
} 

PIE.htc文件加載時,它已準備就緒。設置position:relative當然可以給你一個優勢。我在代碼片段前綴-ms-,這有助於檢測IE。它爲我工作。我使用了最新的PIE.htc文件。

2

我用CSS3Pie了很多的項目,因爲我被迫使網站恰好看起來很像這當然是在技術人員的廢話,而不是銷售的傢伙。

實際上,使用任何種類的.htc文件都非常緩慢,因爲餅圖需要解析這些規則並根據VML-Elements創建模擬相應的css3行爲。如果你有更大的項目,你會比其他別無選擇:

  • 完全省略CSS3的功能爲IE8(和說服salesguy)< - 我最喜愛的選項
  • 省略餡餅和使用IE過濾儘可能
  • 使用
  • 用較少的支持,但處理速度更快更輕量級的框架,因爲PIE是(因爲它有如此高超的支持)十分臃腫,因此相當緩慢

使用像剃鬚刀諫位置並沒有真正解決速度問題和前綴-ms可能會給你在IE9嘗試使用兩個,css3pie和前綴css3屬性嚴重的麻煩。