【发布时间】:2017-08-28 20:00:47
【问题描述】:
我正在构建一个简单的网站,当我单击一个按钮时会给出一个随机引用,然后背景颜色会发生变化。问题是有时背景颜色太深,字体是黑色的,因此人们无法阅读报价。
我的问题:
有没有什么方法可以只使用明亮的颜色或柔和的颜色来创建随机颜色代码?
我得到这个代码来生成随机颜色。我尝试编辑以仅获取 A 到 F 字符串但没有成功:
'#'+((1<<24)*(Math.random()+1)|0).toString(16).substr(1)
非常感谢您。
【问题讨论】:
-
使用
hsl()颜色并在找到最佳饱和度和亮度值jsfiddle.net/sva8ckpy后仅随机化色调@ -
我猜
'#'+((1<<24)*(Math.random()+1)|0xc0c0c0).toString(16).substr(1)可能会解决问题——它应该将每个组件限制在 0xc0-0xff 范围内,但我不知道 javascript 所以真的任何事情都可能发生。 0x808080 允许更多变化,但可能太多了。如果您需要更大的灵活性,那么您将需要可能了解 javascript 的人给出的更完整的答案之一。
标签: javascript css random colors rgb