2012-10-02 59 views
2

我有一個簡單的問題:如果我不打算在RGBA上使用Alpha,對於某些顏色,我應該在這些顏色上使用HEX?有沒有什麼HEX有那個RGBA不?像瀏覽器兼容性,例如?或者一直使用RGBA就好了?我發現它更好,因爲如果我想使用Alpha,我可以。 在此先感謝。使用HEX或RGBA

回答

1

兩者都應該兼容任何符合標準的瀏覽器。

編輯:有可能在IE瀏覽器的一些錯誤行爲(驚喜!):http://css-tricks.com/ie-background-rgb-bug/

+0

是啊,真是一個驚喜!那麼,我將使用十六進制時,不需要Alpha!謝謝所有的答案! – Derik

0

當使用RGBA,我認爲正確的語法使用R,G,B值。由此得名。我沒有嘗試使用Hex來代替,這可能會導致意外的行爲。

在瀏覽器兼容性方面,Hex和RGB幾乎相同/相同。

0

構成瀏覽器兼容性的立場幾乎沒有real區別於任何modern-ish瀏覽器。

你可以在哪裏,我會用HEX去。更短,一個字符串,因此更容易複製到第三方程序(如Photoshop等),也沒有IE bug mentioned by Erty

我傾向於只在需要alpha的地方使用RGBA,在所有其他使用HEX的元素上。

0

你實際上可以(幾乎)總是使用Hex。

即使您需要alpha,只要背景顏色(在含有rgba的元素下)是單一純色,即可將RGBA值轉換爲等效的十六進制值。

該轉換的算法是here

Source => Target = (BGColor + Source) = 
Target.R = ((1 - Source.A) * BGColor.R) + (Source.A * Source.R) 
Target.G = ((1 - Source.A) * BGColor.G) + (Source.A * Source.G) 
Target.B = ((1 - Source.A) * BGColor.B) + (Source.A * Source.B) 

(其實我已經幾次使用它,它很適合我。

如前面提到的答案,增益在這裏是預期的,RGBA顏色看起來像它應該在ie8和向下