随机颜色很简单,但我想随机生成出来的颜色都是不要刺眼的。不知道颜色上的柔和区域有什么规律没有?
只有95分了,全部送上!
只有95分了,全部送上!
解决方案 »
- jquery dialog中modal问题
- JQuery已经获取到返回的JSON数据了,客户端如何使用?
- 如何将JS里变量的值赋给文本框
- ~有没有有经验的程序员朋友试过与企业签订为期半年的项目开发(java/php)~薪资大概是多少?
- is not defined 问题
- 如何 实现 像 google map 的 缩略图 拖动 的位置 的功能 ??? 急!!
- 高分请教~~~来者有分~~~
- 关于multiple select
- struts2后台对象传给前台js
- java实现jsp页面中table的下载到本地功能
- js 如何判断当前页面 取消页面所有class
- javascript中怎样取到数组中的最后一个数
淡蓝色:#F6F9FE
粉红色:#FFE9F4
淡清色:#E1ECE6
橘黄: #FEDEB6
灰色: #CECECE用DebugBar带的拾色工具,看哪种颜色好看就拾下来;
if (hsl[0] > 360 || hsl[0] < 0 || hsl[1] > 100 || hsl[1] < 0 || hsl[2] > 100 || hsl[2] < 0)
return "#000000";
var rgb = [0, 0, 0];
if (hsl[0] <= 60) {
rgb[0] = 255;
rgb[1] = Math.floor(255 / 60 * hsl[0]);
} else if (hsl[0] <= 120) {
rgb[0] = Math.floor(255 - (255 / 60) * (hsl[0] - 60));
rgb[1] = 255;
} else if (hsl[0] <= 180) {
rgb[1] = 255;
rgb[2] = Math.floor((255 / 60) * (hsl[0] - 120));
} else if (hsl[0] <= 240) {
rgb[1] = Math.floor(255 - (255 / 60) * (hsl[0] - 180));
rgb[2] = 255;
} else if (hsl[0] <= 300) {
rgb[0] = Math.floor((255 / 60) * (hsl[0] - 240));
rgb[2] = 255;
} else if (hsl[0] <= 360) {
rgb[0] = 255;
rgb[2] = Math.floor(255 - (255 / 60) * (hsl[0] - 300));
}
var sat = Math.abs((hsl[1] - 100) / 100);
rgb[0] = Math.floor(rgb[0] - (rgb[0] - 128) * sat);
rgb[1] = Math.floor(rgb[1] - (rgb[1] - 128) * sat);
rgb[2] = Math.floor(rgb[2] - (rgb[2] - 128) * sat);
var lum = (hsl[2] - 50) / 50;
if (lum > 0) {
rgb[0] = Math.floor(rgb[0] + (255 - rgb[0]) * lum);
rgb[1] = Math.floor(rgb[1] + (255 - rgb[1]) * lum);
rgb[2] = Math.floor(rgb[2] + (255 - rgb[2]) * lum);
} else if (lum < 0) {
rgb[0] = Math.floor(rgb[0] + rgb[0] * lum);
rgb[1] = Math.floor(rgb[1] + rgb[1] * lum);
rgb[2] = Math.floor(rgb[2] + rgb[2] * lum);
}
return "#" + (0x1000000 + rgb[0] * 0x010000 + rgb[1] * 0x000100 + rgb[2]).toString(16).substring(1);
}var color = hsl2color([360 * Math.random(), 100, 70]);
document.title = color;
document.body.style.backgroundColor = color;使用另一套色系:hsl H: hue,色调,
S:saturation 饱和度
L lum 亮度
概述
HSL色彩模式是工业界的一种颜色标准,是通过对色调(H)、饱和度(S)、亮度(L)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,HSL即是代表色调,饱和度,亮度三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。
HSL色彩模式使用HSL模型为图像中每一个像素的HSL分量分配一个0~255范围内的强度值。HSL图像只使用三种通道,就可以使它们按照不同的比例混合,在屏幕上重现16777216种颜色。
在 HSL 模式下,每种 HSL 成分都可使用从 0到 255的值。(其中L是从黑(0)到白(255)渐变)
Windows自带画图程序中菜单栏->颜色->编辑颜色->规定自定义颜色 中可以通过修改E(H)SL的值(0~240)以得到对应RGU(B)的值。