どのようにして16進色でフェードしますか? 0〜100のスケールに基づいています。スケールに基づいて16進数で色を薄くします
私は100を与えられたときに要素を緑色にし、0のときは白を中間にしたいとします。
更新: HEX> RGB> HSV - ここルーチンの参考コレクション: http://php.amnuts.com/index.php?do=view&id=16&file=class.image.php
どのようにして16進色でフェードしますか? 0〜100のスケールに基づいています。スケールに基づいて16進数で色を薄くします
私は100を与えられたときに要素を緑色にし、0のときは白を中間にしたいとします。
更新: HEX> RGB> HSV - ここルーチンの参考コレクション: http://php.amnuts.com/index.php?do=view&id=16&file=class.image.php
あなたはHSV色座標を使用して、色相(H)と値(V)が固定させてください、 (灰色、0)からフル(緑色、1)に彩度(S)を変化させる。 RGBとHSVの間の変換は簡単です。あなたはWikipediaの数式を使うことができます。
まあ、画面の色は「明るい」で、「顔料」ではないため、すべての色がないのは白ではなく黒です。だから、ヘックスではなく、CSS rgbカラーで黒から緑へ行くのが簡単です。
rgb(0,0,0) --> rgb(0,255,0)
あなたはすべての色で始まり、そして純粋な緑を残す規模で青と赤を削除する必要があります白のために同じことをすることができません。
RGB(255,255,255) - > RGB(150255150) - > RGB(0,255,0)
そしてちょうどSOあなたの規模で乗算する数(= 2.55 100分の255)のための計算を行います
は私が緑に白を75
75 * 2.55 = 191 (rounded)
だから、得点ならば、私は
element.class {color:rgb(191,255,191); }
に自分の色を設定します最も簡単な方法は、CSSでrgb()を使うことです。生の整数を受け入れるので、壮大な緑の場合は0から(gは255)、白の場合は255からrとbの値の数値を変更するだけです。
まさに私が指摘する必要のあるタイプのタイプ。ありがとう。 – davivid