CSS Relative Color Playground - Online Manipulate Colors
Write CSS like `oklch(from red l c h)` to modify colors dynamically. Preview the output and copy the code.
UD5 Toolkit
Generate lighter, darker, saturated & custom color variants from a single base β using modern CSS rgb(from ...) & hsl(from ...) syntax.
from keyword inside rgb(), hsl(), oklch(), and other color functions, you can reference a source color and apply calc() expressions to its channels. For example: rgb(from var(--brand) calc(r + 30) calc(g + 30) calc(b + 30)) creates a lighter variant.
:root { --primary: #3b82f6; }.btn-hover { background: rgb(from var(--primary) calc(r + 20) calc(g + 20) calc(b + 20)); }--primary automatically updates all derived variants across your entire stylesheet β no need for preprocessors like Sass.
rgb(from ...) operates in the sRGB color space with channels r, g, b (0β255) and an optional alpha (0β1). It's intuitive for lightening/darkening by adding/subtracting from all channels. hsl(from ...) operates in HSL space with h (0β360), s (0β100), l (0β100). It's better for saturation adjustments, hue rotations, and maintaining perceptual brightness. Choose based on the visual effect you want.
rgb(from #ff6b6b calc(r - 50) g b) or hsl(from rgb(100,200,150) h calc(s * 0.5) l). However, using CSS variables makes your code much more maintainable and is the recommended approach for design systems and theming.
lighten(), darken(), saturate(), adjust-hue(), and rgba() opacity variants from Sass. The key advantage: these are runtime, dynamic calculations in the browser, responding to CSS variable changes β something preprocessors cannot do. However, Sass still has value for more complex color math and compile-time optimizations.
rgb(), hsl(), hwb(), lab(), lch(), oklab(), oklch(), and the color() function for display-p3 and other wide-gamut spaces. Each space gives you access to different channels for manipulation. For example, oklch(from ... l c h) lets you adjust perceptual lightness, chroma, and hue in the perceptually uniform OKLCH space.
Write CSS like `oklch(from red l c h)` to modify colors dynamically. Preview the output and copy the code.
Pick two colors and mix them in different color spaces with sliders. See the difference between sRGB and OKLCH mixing. Copy the code.
Convert hex, RGB, or HSL into the modern OKLCH color space. See the preview and copy CSS oklch() value. Local.
Pick a COLRv1 color font and change its palette with fontβpalette. Create custom palettes with @fontβpaletteβvalues.
Write scoped CSS rules that apply only within a subtree. See the boundary limits and avoid naming conflicts. New browser feature.
Design a layout where nested grids share track sizes with their parent via subgrid. Copy the complete CSS.
Create a pure CSS scroll progress indicator using animationβtimeline: scroll(). No JavaScript. Copy the complete code.
Paste your CSS and see warnings for properties that have limited browser support. Links to CanIUse. Modernize safely.
Write a compute shader in WGSL and run it in the browser. See the output on a canvas. Learn WebGPU. Realβtime compilation.
Limit browser gestures on an element: panβx, pinchβzoom, manipulation. Draw on a canvas to test. Mobile dev helper.
Create complex linear gradients with any number of color stops, exact angles, and length units. Live preview and CSS code.
Style underlines, overlines, and strike-throughs with colors, wavy styles, and thickness. Modern CSS textβdecoration.
Generate a random HTML/CSS card with different box model properties. Inspect and guess the size. For learners.
Design a button or card that glows on hover. Adjust shadow color, spread, and transition. Copy the CSS. Rich UI.
Interactively add and adjust multiple box shadows on a sample element. Drag sliders for offset, blur, spread, and color. Copy the clean CSS code instantly.
Create a realistic letterpress (debossed) text effect using CSS textβshadow and background. Adjust depth and light direction. Copy code.
Generate a subtle noise/grain texture as a CSS background pattern. Adjust opacity and size. For that film look.
Create a customizable checkerboard or grid background using pure CSS gradients. Adjust cell size and colors. Copy the code.
Upload two images and apply CSS blend modes (multiply, screen, overlay, etc.). See the result and copy the filter CSS. Pure frontend.
Add print styles like removing backgrounds, adding page breaks, setting margins. See print preview instantly.
Create a pure CSS countdown timer with a flipping number effect. Adjust duration and style. No JavaScript needed for display.
Create a glowing or rotating border animation around an element. Copy the CSS keyframes. Pure CSS magic.
Create a custom HTML/CSS progress bar with percentage, colors, and animation. Copy the code. Modern UI element.
Design a realistic neon sign text with multiple layers of glow. Copy the CSS and HTML. Perfect for headers.
A replica of the famous Flexbox Froggy game: solve alignment puzzles by writing CSS. Progress saved locally. Fun frontend learning.
Experiment with CSS Grid properties visually. Add rows, columns, and areas. See the grid in action and copy the code.
Fetch a website's CSS and extract :root custom properties (ββcolor) to reveal its design token palette. For learning and inspiration.
Recreate the target CSS linear gradient by adjusting stops and colors. A unique game for frontβend developers to master gradients.
Browse and search all Font Awesome 6 icons with preview, class name, and unicode. Copy the HTML snippet. Perfect for web developers.
Create text with a gradient fill using CSS background-clip. Configure colors and direction. Copy the code. Works in modern browsers.