CSS 渐变与阴影生成器

拖动参数就能看到效果,复制出去的就是预览里的那条 CSS。

本地计算

选择工具

渐变、盒子阴影与文字阴影
渐变 线性、径向与圆锥渐变
卡片
阴影

色标

位置会自动排序,保持递增

预设

渐变的 CSS

可直接选中复制
等待输入…
当前工具渐变
结果状态可复制

常见问题

复制出来的 CSS 能直接用吗?

可以。预览区用的就是输出的那条 CSS 字符串,不存在「预览一套、导出另一套」的映射,所以看到什么粘贴出来就是什么。渐变会同时给出 background-image 与一条 background-color 兜底色,万一遇到不支持渐变的渲染环境也不会露白。

为什么颜色输出成 rgba 而不是八位十六进制?

#rrggbbaa 这种八位写法在老一点的浏览器和部分邮件客户端里不被识别,整条规则会直接失效。这里把颜色统一转成 rgba(),透明度单独给,兼容性更稳。

色标位置拖乱顺序会不会写错?

不会。CSS 规定色标位置必须单调递增,写乱了浏览器会自己改,但那样贴到别处就变样。本页输出前会按位置排序,松手时界面也会跟着重排,保证你看到的顺序就是输出的顺序。

会联网或上传我调的内容吗?

不会。页面不包含任何网络请求,也不会生成图片,只是把参数拼成一段 CSS 文本。你调的颜色和数值只留在浏览器本地,方便下次打开继续调。

把渐调和阴影调到能用,再把 CSS 拿走

渐变和阴影是最容易「写的时候觉得对、上屏才发现不对」的两件事:角度差 10 度、模糊多半档、透明度差一点点,观感就完全不同。与其反复改数字刷新页面,不如在这里拖到满意,再把那段 CSS 复制回项目。

预览即所得

预览区直接应用生成出来的那条 CSS,不做参数到样式的二次映射,看到的就是拿走的效果。

色标位置自动排序

CSS 要求色标位置单调递增,输出前统一排序,界面也跟着重排,不会出现「界面顺序和代码顺序不一致」。

颜色统一转 rgba

八位十六进制在老浏览器和邮件客户端里不认,这里把透明度单独拆出来,兼容性更稳。

多层阴影

最多四层盒子阴影,逐层叠加并支持内阴影;常见的「卡片悬浮」「按钮按下」都预置好了。

三种渐变都在

线性、径向、圆锥一次做全,径向还能选形状与延伸方式,圆锥可以直接做色环和转盘。

带兜底底色

渐变之外同时给出 background-color,遇到不支持渐变的渲染环境也不会露出一块白。

箭头角度按 CSS 规范

0 度朝上、90 度朝右,和 CSS 的定义一致,不用在脑子里做换算。

本地运行

不联网、不上传、不生成图片,参数只留在你的浏览器里。

三个容易踩的地方

  1. 角度和直觉相反。CSS 里 0deg 指向正上方而不是正右方,90deg 才是向右。很多人第一次调渐变都会把角度填反,结果方向整个转 90 度。
  2. 色标位置写乱会静默生效。写「100% → 0%」这种顺序,浏览器会当成递增处理,肉眼看着没问题,但把这段 CSS 挪到别处渲染结果就不一样了。
  3. 阴影不是越多越好。多层阴影每多一层就多一次绘制开销,移动端滚动时会明显掉帧。通常一到两层就够,第二层用更小的偏移和更大的模糊做层次感。