精读 预计 17 分钟
Experimenting with random() in CSS
摘要
Polypane 29 + 和 Chromium 148 + 支持 CSS random () 函数,允许在属性上直接注入随机值。文章展示 13 个交互演示:bokeh 效果(位置、大小、颜色、模糊、脉冲动画)、落花瓣(起始位置、尺寸、风吹动画、twirl 旋转)、fling 的极坐标照片堆栈(网格布局、:checked 状态和表单重置交互)、诗歌(step 与加权 random () 组合)、以及 shaky grid、随机旋转矩形、aurora 效果。代码示例仅展示相关 CSS,支持 live 编辑与 randomize 按钮;浏览器支持说明包括 Safari 26.2 + 部分实现及 Firefox 暂不支持;包含 position、element-scoped 等技术细节与坑点。
荐读理由
用 element-scoped 自定义属性存储 random() 值,避免同一元素重复计算;结合 calc() 防溢出、custom property 复用随机值、hsl() 混合 hue/opacity/contrast、filter blur+contrast+mix-blend-mode 做 bokeh 散景、translate+duration+delay 做 petal 风吹旋转动画、Grid+transform+form :checked+reset 做 polaroid 乱堆可甩动画,这些都能直接抄到 AI 项目里做随机背景、粒子特效、交互灵动效果
这条对你有帮助吗?