2013-07-26 108 views
0

我有以下CSS:如何計算漸變顏色替換?

background-image: linear-gradient(#444f67, #262c39); 

這些是現有漸變的起點和終點的顏色。現在我想調整漸變色,因爲我調整了此網站的顏色方案。

我知道新的起點顏色:

background-image: linear-gradient(#542437, X); 

我該如何解決X?基於....

oldStart -> oldEnd = ExistingGradient :: newStart -> X (new end) = NewGradient 

在此先感謝...

+0

你想基於新的顏色?相同的飽和度和亮度差異? – jfrej

回答

1

下面是我通常用純CSS解決這個問題 - 用透明的漸變,只改變基本的背景顏色。

例如,而不是:

background-image: linear-gradient(#444f67, #262c39); 

使用:

background-color: #444f67; 
background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.4)); 

然後你就可以換背景顏色的另一個主題:

background-color: #542437; 
background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.4)); 

這裏有一個工作示例:jsfiddle


否則,如果您要求如何計算實際顏色,則需要定義您的要求。你想做服務器端還是客戶端?用C#處理相當容易,而且可以用JavaScript處理。

+0

我想通了 - 這是直接的十六進制加/減,但我喜歡你的解決方案清潔。 –