25

CSS に配列からランダムなフォントの色を選択させる方法はありますか? サーバー側またはJavaScriptでこれを行うことができることは知っていますが、これを行う純粋なCSSの方法があるかどうか疑問に思っています.

4

5 に答える 5

63

CSS 式 (CSS を介して動的なスクリプト コンテンツを可能にする) は、IE7 以下でのみサポートされる Web フォームと並んで、地獄のような非効率の腸に投げ込まれた忌まわしきものでした。しかし、あなたが尋ねたので。

<style>
blink marquee {
   color: expression("rgb(" + Math.floor(Math.random() * 255)
      + "," + Math.floor(Math.random() * 255) + ","
      + Math.floor(Math.random() * 255) + ")");
}
</style>
<blink>
   <marquee>
      color me beautiful
   </marquee>
</blink>
于 2013-02-20T16:31:29.170 に答える
36

これは、しっかりと決定論的なCSSでは不可能です。ただし、これはクライアント側のJavaScriptで行うことができます。

var colors = ['#ff0000', '#00ff00', '#0000ff'];
var random_color = colors[Math.floor(Math.random() * colors.length)];
document.getElementById('title').style.color = random_color;

jQueryを使用している場合、最後の行は次のようになります。

$('#title').css('color', random_color);
于 2013-02-20T16:16:21.220 に答える
3

JQuery を使用した JavaScript で簡単に。

次のようなことができます。

var hexArray = ['#hexVal','#hexVal','#hexval', '#hexval']
var randomColor = hexArray[Math.floor(Math.random() * hexArray.length)];

$("#divId").css("color",randomColor); //A class selector would work too

ページが更新されるたびに新しい色が選択されます。

于 2013-02-20T16:21:57.897 に答える
0

定義済みのカラー セットを使用せずに、一様にランダム化されたカラー関数を取得する

function randomColor(){
    rc = "#";
    for(i=0;i<6;i++){
        rc += Math.floor(Math.random()*16).toString(16);
    }
    return rc;
}

またはインライン

"#"+Math.floor(Math.random() * 0x1000000).toString(16)
于 2017-03-06T05:59:43.453 に答える