是否有可能产生随机颜色纯CSS和不使用JavaScript? 这也可能是不可能的,但我还是很好奇。
Answer 1:
我发现你的东西在这里 ,但它使用PHP。 我认为这是不可能的纯CSS。
Answer 2:
这是不是真的有可能在纯CSS。
然而,使用预处理器像SASS( 例如 )或更小( 例如 )可以,因为他们使用的脚本语言内置生成随机颜色供您。
一个侧面说明,可以帮助读者在未来使用的可能性CSS变量 。 我们可以这样定义一个变量的CSS
element {
--main-bg-color: brown;
}
并使用它像这样:
element {
background-color: var(--main-bg-color);
}
现在,我们可以用JS更改:
// From http://stackoverflow.com/a/5365036/2065702
var randomColor = "#"+((1<<24)*Math.random()|0).toString(16);
document.documentElement.style.setProperty('main-bg-color', randomColor);
或者你可以选择使用随机颜色(比如用户输入)的完全不同的方式。 这使得像主题化的可能性。 有一件事你必须要考虑的是浏览器的支持 ,因为它现在是不是很大。
Answer 3:
并不是的。 活力只能与支持脚本的执行。
Answer 4:
<body style='background-color:<?php printf( "#%06X\n", mt_rand( 0, 0x222222 )); ?>'>
使用PHP
Answer 5:
根据这个网站, http://blog.codepen.io/2013/08/26/random-function-in-sass/其可能的,但不是纯CSS
Answer 6:
不完全是随机的,但与CSS:
步骤1 - 选择查询的背景,在序列命令他们和调整频率
@keyframes bgrandom {
0% { background: linear-gradient(90deg, rgba(255,255,255,0.98) 50%, rgba(255,255,255,0.96) 0%); }
50% { background: linear-gradient(90deg, rgba(255,255,255,0.98) 50%, rgba(255,255,255,0.96) 0%); }
55% { background: linear-gradient(90deg, rgba(255,255,255,0.96) 50%, rgba(255,255,255,0.98) 0%); }
80% { background: linear-gradient(90deg, rgba(255,255,255,0.96) 50%, rgba(255,255,255,0.98) 0%); }
85% { background: linear-gradient(90deg, rgba(255,255,255,0.96) 50%, rgba(255,255,255,0.94) 0%); }
100% { background: linear-gradient(90deg, rgba(255,255,255,0.96) 50%, rgba(255,255,255,0.94) 0%); }
}
步骤2 - 启动动画(长度animationName REPEATMODE)
#element{ animation: 1.2s bgrandom infinite; }
易于使用,定制和伟大工程。 可用于滑块,纺纱等类似的技术
文章来源: Generate random color with pure CSS (no javascript)?