2012-04-26 5 views
0

シーケンス内のいくつかの文字(ベース)に色を付けたいと思っています。私は「これを色づけ」と言う機能を作れますが、その色が何であるかは言えません。HSLを使用したPHPでの色付け

内部スタイルシートを使用していくつかのhsl divを作成しましたが、これはうまくいかないようです。

case 1: /*500-550(Raw Score)*/ 
    $truecol=<div style="text-color: hsl($col,25%, 100%);">/*input*/</div> 
    break; 

case 2: //550-600 
    $truecol=<div style="text-color: hsl($col,35%, 100%);">/*input*/</div> 
    break; 
case 3: //600-650 
    $truecol=<div style="text-color: hsl($col,45%, 50%);">/*input*/</div> 
    break; 
case 4: //650-700 
    $truecol=<div style="text-color: hsl($col,50%, 100%);">/*input*/</div> 
    break; 
case 5: //700-750 
    $truecol=<div style="text-color: hsl($col,55%, 100%);">/*input*/</div> 
    break; 
case 6: //750-800 
    $truecol=<div style="text-color: hsl($col,60%, 100%);">/*input*/</div> 
    break; 
case 6: //800-850 
    $truecol=<div style="text-color: hsl($col,70%, 100%);">/*input*/</div> 
    break; 
case 7: //850-900 
    $truecol=<div style="text-color: hsl($col,80%, 100%);">/*input*/</div> 
    break; 
case 8: //900-950 
    $truecol=<div style="text-color: hsl($col,90%, 100%);">/*input*/</div> 
    break; 
case 9: //950-1000 
    $truecol=<div style="text-color: hsl($col,100%, 100%);">/*input*/</div> 
    break; 

rgbをhsl彩度に変換してから16進数に戻す必要がありますか? 色はグラデーションで移動することが重要です。これが私がHSLを最初に使う理由です。

+0

'$ col'とは何ですか? –

+0

それにかかわらず、100%の明度で、これらのうちの1つだけがすべて白になります。 –

答えて

0

まず、質問のPHPの色分けを見てください。明らかに、あなたはそれが正しくないことが分かります。

これらのHTMLタグを文字列に挿入します。スタイル属性を正しくエスケープしているかぎり、二重引用符を使用することをお勧めします。例:

$truecol = "<div style=\"color: hsl($col,100%,50%);\">...</div>"; 

はまた、私は他の2つのエラーを修正気づく:スタイルプロパティはcolor、ないtext-colorあり、かつhslに明度が「正常な」色のために50%にする必要があります。 100%であなたはただ白くなる。

関連する問題