font: 120%/1.5 georgia, serif; background: white; margin: 0; padding: 0; } p { max-width: 24em; margin: 0; padding: 1em; background: rgba(255,255,255,.5) } </style> <?php $h1 = rand(0, 360); $s1 = rand(0, 100); $l1 = rand(0, 100); $colour1 = hueName($h1); $saturation1 = saturationName($s1); $lightness1 = lightnessName($l1); echo '<body style="background: ' . returnColor($h1, $s1, $l1) . '">'; echo '<p>Chances are you are looking at a' . $saturation1 . $lightness1 . $colour1 . ' browser screen.</p>'; echo '</body>'; ?>
function hsv2hex($h, $s, $v) { $s /= 256.0; $v /= 256.0; if ($s == 0.0) { $r = $g = $b = $v; return ''; } else { $h = $h / 256.0 * 6.0; $i = floor($h); $f = $h - $i; $v *= 256.0; $p = (int) ($v * (1.0 - $s)); $q = (int) ($v * (1.0 - $s * $f)); $t = (int) ($v * (1.0 - $s * (1.0 - $f))); switch ($i) { case 0: $r = $v; $g = $t; $b = $p; break; case 1: $r = $q; $g = $v; $b = $p; break; case 2: $r = $p; $g = $v; $b = $t; break; case 3: $r = $p; $g = $q; $b = $v; break; case 4: $r = $t; $g = $p; $b = $v; break; default: $r = $v; $g = $p; $b = $q; break; } } $newcolor = array($r, $g, $b); return returnColor($newcolor); }