背景にランダムな色を使用していますが、テキストが黒なので、本当に暗い色が生成されると、テキストが見えなくなります。16進コードを生成するときにこれらの暗い色を除外するにはどうすればよいですか?
私はこれを取得する方法を理解することしかできませんでした:
Math.floor(Math.random()*16777215).toString(16)
しかし、これは暗い色を除外するものではありません。誰か助けてくれませんか?
前もって感謝します!
背景にランダムな色を使用していますが、テキストが黒なので、本当に暗い色が生成されると、テキストが見えなくなります。16進コードを生成するときにこれらの暗い色を除外するにはどうすればよいですか?
私はこれを取得する方法を理解することしかできませんでした:
Math.floor(Math.random()*16777215).toString(16)
しかし、これは暗い色を除外するものではありません。誰か助けてくれませんか?
前もって感謝します!
値が高いほど、色が薄くなり、高い数値(200
この場合)にランダムな値を追加してみることができます。
var randValue = Math.floor(Math.random()*56)+200; //200 to 255
注:最大HEX値はFF
、10進数に等しい値です。255
次に、オプションでこれらのRBG値をを使用してHEXに変換できますが.toString(16)
、私が知る限り、RBG値を使用して色を設定できます。
これがjsFiddleデモです
私がすることは、それぞれ(RGB)(つまり000000
、FFFFFF
)に対して00からFFまでの数値を生成することです。また、G値が約33よりも高いことを確認します。
1と2の数字のないランダムRGBなので、少ないコードで素敵な色が得られます。
var randomColor = (function lol(m, s, c) {
return s[m.floor(m.random() * s.length)] +
(c && lol(m, s, c - 1));
})(Math, '3456789ABCDEF', 4);
JSFiddleデモ