2011-10-13 63 views
1

我有一些鏈接按鈕,我使用的是從終極CSS漸變生成器生成的CSS3漸變代碼。除了IE7-9(不用擔心IE6)之外,它工作得很好。而不是從中灰色到深灰色,它顯示出一個藍色到黑色的漸變。正在使用的代碼是:IE濾鏡漸變不顯示錯誤的顏色

background: #666666; /* Old browsers */ 
background: -moz-linear-gradient(top, #666666 0%, #141414 100%); /* FF3.6+ */ 
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#666666), color-stop(100%,#141414)); /* Chrome,Safari4+ */ 
background: -webkit-linear-gradient(top, #666666 0%,#141414 100%); /* Chrome10+,Safari5.1+ */ 
background: -o-linear-gradient(top, #666666 0%,#141414 100%); /* Opera11.10+ */ 
background: -ms-linear-gradient(top, #666666 0%,#141414 100%); /* IE10+ */ 
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#666666', endColorstr='#141414',GradientType=0); /* IE6-9 */ 
background: linear-gradient(top, #666666 0%,#141414 100%); /* W3C */ 

要看到它是什麼樣的渲染:http://bradmccullough.com.w.jaijaz.co.nz/

我注意到,改變顯示的CSS元素的變化,但不能把我的手指上,究竟是怎麼回事。

謝謝。

回答

2

這是因爲您在CSS中使用灰色的速記顏色。確保你使用#666666。查看樣式表的源代碼,對於IE過濾器,您使用的是#666(儘管在上面的文章中您是正確的)。

+0

謝謝,謝謝,謝謝。在組合和壓縮樣式表時,我沒有意識到我的CMS取代了十六進制顏色的簡化版本。偉大的發現。 – Jaijaz

+0

謝謝。我遇到了同樣的問題,因爲我使用了#fff而不是#ffffff。 – huzzah

+0

不客氣! – SoWeLie

1

我們最近有類似的問題。我們發現,在CSS文件上運行CSS minify將會將#666666縮短爲「#666」,導致IE8無法在「過濾器」屬性中呈現正確的顏色值。唯一的選擇是將顏色定義爲「白色」(我們的問題是用'#ffffff')或稍微調整顏色,即'#fffffe'以防止以簡寫形式寫入。