2012-01-23 58 views
1

我試圖按照CSS: semi-transparent background, but not text中的建議操作。我對Firefox,Safari,Opera和Chrome中的結果感到高興。通過這些瀏覽器,我可以獲得類似於下面的結果,您可以在標題下看到透明背景。不過,我遇到了IE的問題。透明背景顏色,但在IE 6和7中不透明文本

您應該click here to see the jsfiddle

Expected Result

在IE8是確定的,但在IE6/7沒有彩色帶可言。任何人都知道如何解決它?

+1

退房類似的問題 - http://stackoverflow.com/questions/3975688/css-background-opacity-with-rgba-not-working-in-ie-8 –

回答

1

div.header

刪除:

background-color: #0a5787; 
background: transparent; 

地址:

background: none; 
zoom: 1; 

變化:

/* For IE 5.5-7 */ 
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#900a5787, endColorstr=#900a5787); 
/* For IE 8 */ 
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#900a5787, endColorstr=#900a5787)"; 

這適用於IE7,當我測試它,理論上我確定它應該在IE6中工作,但在我的模擬器上它不工作。

的jsfiddle:這裏http://jsfiddle.net/3jEbC/

+1

在此期間,我嘗試了與IE7一起使用的PNG技巧http://jsfiddle.net/xhrAJ/10/,並在IE6中提供了全綵色。但是你的解決方案是完美的!它也適用於IE6,你太棒了!謝謝! – stivlo

+0

啊終於我明白了MS字符串像#900a5787,前兩個十六進制數字是透明的,其他6種顏色! – stivlo

+0

@stivlo我相信瀏覽器會調用DirectX API,這就是爲什麼它是向後的。看看這篇博文:[如何在IE中使用RGBA()](http://kilianvalkhof.com/2010/css-xhtml/how-to-use-rgba-in-ie/) –