CSS Gradient Generator

Bouw lineaire en radiale CSS-verlopen visueel op en kopieer de CSS-code

Probeer een voorbeeld
Type
Hoek135°

Kleurstops

0%
100%

CSS-uitvoer

background: linear-gradient(135deg, #6366f1 0%, #ec4899 100%);

Wat is een CSS-verloop?

Een CSS gradient generator is een visuele tool waarmee je soepele kleurovergangen kunt bouwen zonder de verloopsyntax met de hand te schrijven. In CSS is een verloop een vloeiende overgang tussen twee of meer kleuren, rechtstreeks door de browser weergegeven zonder afbeeldingsbestand. De CSS Image Module Level 4-specificatie definieert verloopfuncties als een type afbeeldingswaarde, wat betekent dat ze overal gebruikt kunnen worden waar background-image, list-style-image of border-image wordt geaccepteerd. Omdat de browser verlopen rasteriseert tijdens het renderen, schalen ze naar elke resolutie en produceren ze nooit wazige artefacten op high-DPI-schermen. Een CSS gradient generator bespaart tijd en vermindert giswerk — je past kleuren en posities visueel aan en kopieert vervolgens de voltooide CSS-regel.

CSS ondersteunt drie hoofdvormen van verlopen: lineair (langs een rechte lijn), radiaal (naar buiten vanuit een middelpunt) en conisch (een sweep rondom een middelpunt). Elke vorm accepteert een lijst met kleurstops, waarbij je de kleur en optioneel een positie (percentage of lengte) opgeeft. De browser interpoleert kleuren tussen stops standaard in de sRGB-kleurruimte, hoewel CSS Color Level 4 het mogelijk maakt andere kleurruimten op te geven, zoals oklch en lab, voor visueel soepelere overgangen.

Verlopen vervangen afbeeldingsgebaseerde achtergronden voor de meeste decoratieve doeleinden op het web. Eén CSS-regel produceert wat vroeger een Photoshop-export en een HTTP-verzoek vereiste. Ze zijn resolutieonafhankelijk, vereisen geen netwerkbandbreedte buiten de CSS zelf, en kunnen worden geanimeerd of overgegaan met standaard CSS-eigenschappen. De verloopsyntax is stabiel in alle grote browsers sinds 2013, en de versie zonder vendor-prefix werkt in Chrome, Firefox, Safari en Edge zonder fallbacks.

Waarom deze CSS Gradient Generator gebruiken?

Verloopsyntax met de hand schrijven betekent raden naar stopposities, hoekwaarden controleren en steeds vernieuwen om het resultaat te zien. Een visuele bouwer laat je het verloop zien terwijl je het opbouwt, stops aanpassen door te slepen en de definitieve CSS kopiëren zodra het er goed uitziet.

Live visuele voorvertoning
Zie het verloop in realtime bijwerken terwijl je kleuren, posities en hoeken aanpast. Geen noodzaak om te wisselen tussen je editor en browser.
🔒
Privacy-first verwerking
Alle weergave vindt plaats in je browser. Er worden geen kleurgegevens of verloopinstellingen naar een server verzonden.
🎨
Meerdere verlooptypen
Bouw lineaire en radiale verlopen met volledige controle over richting, hoek en kleurstopposities. Kopieer de CSS met één klik.
📋
Geen account vereist
Open de pagina en begin met bouwen. Geen registratie, geen e-mailbeperking, geen limieten. Werkt offline zodra geladen.

Toepassingen van de CSS Gradient Generator

Frontend-ontwikkeling
Bouw hero-sectie-achtergronden, kaartoverlays en hover-states voor knoppen. Bekijk het verloop op de doelafmetingen en plak de CSS direct in je stylesheet of Tailwind-configuratie.
E-mailsjabloonontwerp
Sommige e-mailclients ondersteunen CSS-verlopen in inline-stijlen. Genereer de exacte verloopcode en voeg die inline toe aan het element, met een solide fallback-kleur voor clients die geen verlopen weergeven.
Ontwerpprototyping
Wanneer je kleurschema's in de browser itereert in plaats van in Figma, genereer je snel verloopachtergronden. Vergelijk meerdere opties naast elkaar zonder assets te exporteren.
DevOps-dashboardopmaak
Status-dashboards en monitoring-interfaces gebruiken kleurverlopen om ernst-bereiken (groen naar rood) of gegevensdichtheid weer te geven. Genereer de verloopwaarden en pas ze toe op grafiekachtergronden of statusbalken.
Datavisualisatie
Grafiekbibliotheken zoals D3.js en Recharts accepteren CSS-verloopdefinities voor gebiedsvullingen en heatmaps. Bouw het verloop visueel en extraheer vervolgens de stopkleuren voor je schaalfunctie.
CSS leren
Studenten die CSS studeren kunnen experimenteren met verloopsyntax, zien hoe hoekwijzigingen de richting beïnvloeden en de positionering van kleurstops begrijpen. De gegenereerde CSS dient als werkende referentie.

Naslaggids voor CSS-verlooptypen

CSS definieert vijf verloopfuncties. De drie primaire typen (linear, radial, conic) hebben elk een herhalingsvariant die het patroon tegelt. repeating-linear-gradient() en repeating-radial-gradient() zijn handig voor gestreepte achtergronden en concentrische ringen. Alle verloopfuncties accepteren kleurstops in elk CSS-kleurformaat: HEX, RGB, HSL, benoemde kleuren of oklch. Browserondersteuning voor alle vijf functies is praktisch universeel in Chrome, Firefox, Safari en Edge — er zijn geen vendor-prefixes vereist.

FunctieVoorbeeldsyntaxRichtingVeelgebruikt voor
linear-gradient()to right, #f00, #00fStraight lineBackgrounds, hero sections, progress bars
radial-gradient()circle, #f00, #00fOutward from centerSpotlight effects, buttons, badges
conic-gradient()from 0deg, #f00, #00fSweep around centerPie charts, color wheels, spinners
repeating-linearto right, #f00 0 10px, #00f 10px 20pxTiled lineStripes, progress indicators, decorative borders
repeating-radialcircle, #f00 0 10px, #00f 10px 20pxTiled circleConcentric ring patterns, retro textures

Lineair vs radiaal vs conisch verloop

Elk verlooptyp koppelt kleuren op een andere manier aan geometrie. De juiste keuze hangt af van het gewenste visuele effect, niet van een kwaliteitsverschil tussen de typen. Voor de meeste paginaachtergronden en sectieverdelers is een lineair verloop de juiste standaardkeuze — het is het eenvoudigst te doordenken en het meest voorspelbaar bij elementen van uiteenlopende afmetingen. Radiale en conische verlopen zijn beter gereserveerd voor specifieke visuele effecten waarbij de cirkelvormige of rotationele geometrie betekenisvol is in plaats van decoratief.

linear-gradient()
Kleuren gaan over langs een rechte lijn die wordt bepaald door een hoek (0deg = onder naar boven, 90deg = links naar rechts) of een trefwoord zoals 'to right'. Het meest voorkomende type, gebruikt voor achtergronden, overlays en voortgangsindicatoren. Ondersteunt meerdere kleurstops op willekeurige posities.
radial-gradient()
Kleuren stralen naar buiten vanuit een middelpunt in een cirkel of ellips. Stuur de vorm, grootte en middelpositie aan via de syntax. Handig voor spotlight-effecten, vignet-effecten en cirkelvormige UI-elementen zoals badges of avatarringen.
conic-gradient()
Kleuren draaien rondom een middelpunt zoals de wijzers van een klok. De beginhoek is instelbaar via 'from Xdeg'. Handig voor cirkeldiagramsegmenten, kleurwielen en rotatieve laadindicatoren. Vereist minimaal twee stops; het herhalen van de eerste kleur aan het einde creëert een naadloze lus.

Codevoorbeelden

Voorbeelden van het genereren en toepassen van CSS-verlopen via code in JavaScript, Python, CSS en Go. Elk voorbeeld produceert geldige CSS-verloopstrings die je direct in stylesheets of inline-stijlen kunt gebruiken.

JavaScript
// Generate a CSS linear-gradient string from an array of stops
function buildGradient(angle, stops) {
  const parts = stops.map(s => `${s.color} ${s.position}%`)
  return `linear-gradient(${angle}deg, ${parts.join(', ')})`
}

const stops = [
  { color: '#6366f1', position: 0 },
  { color: '#ec4899', position: 50 },
  { color: '#f59e0b', position: 100 },
]
buildGradient(90, stops)
// -> "linear-gradient(90deg, #6366f1 0%, #ec4899 50%, #f59e0b 100%)"

// Apply to an element
document.querySelector('.hero').style.background = buildGradient(135, stops)
Python
# Generate a CSS gradient string for use in templates or SVGs
def build_gradient(angle: int, stops: list[tuple[str, int]]) -> str:
    parts = [f"{color} {pos}%" for color, pos in stops]
    return f"linear-gradient({angle}deg, {', '.join(parts)})"

stops = [("#6366f1", 0), ("#ec4899", 50), ("#f59e0b", 100)]
print(build_gradient(135, stops))
# -> "linear-gradient(135deg, #6366f1 0%, #ec4899 50%, #f59e0b 100%)"

# Interpolate N colors between two endpoints
def interpolate_hex(c1: str, c2: str, steps: int) -> list[str]:
    r1, g1, b1 = int(c1[1:3], 16), int(c1[3:5], 16), int(c1[5:7], 16)
    r2, g2, b2 = int(c2[1:3], 16), int(c2[3:5], 16), int(c2[5:7], 16)
    return [
        f"#{int(r1+(r2-r1)*i/(steps-1)):02x}"
        f"{int(g1+(g2-g1)*i/(steps-1)):02x}"
        f"{int(b1+(b2-b1)*i/(steps-1)):02x}"
        for i in range(steps)
    ]

interpolate_hex("#6366f1", "#f59e0b", 4)
# -> ['#6366f1', '#9a7399', '#d18042', '#f59e0b']
CSS
/* Linear gradient — left to right */
.hero {
  background: linear-gradient(90deg, #6366f1 0%, #ec4899 50%, #f59e0b 100%);
}

/* Radial gradient — circular spotlight */
.badge {
  background: radial-gradient(circle at 30% 30%, #6366f1, #312e81);
}

/* Conic gradient — color wheel */
.wheel {
  background: conic-gradient(from 0deg, #ef4444, #f59e0b, #22c55e, #3b82f6, #8b5cf6, #ef4444);
  border-radius: 50%;
}

/* Multi-stop with transparency */
.overlay {
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.6) 60%,
    rgba(0, 0, 0, 0.9) 100%
  );
}

/* Repeating stripes */
.stripes {
  background: repeating-linear-gradient(
    45deg,
    #6366f1 0 10px,
    transparent 10px 20px
  );
}
Go
package main

import "fmt"

// Stop represents one color stop in a gradient.
type Stop struct {
	Color    string
	Position int // percent 0-100
}

func buildGradient(angle int, stops []Stop) string {
	result := fmt.Sprintf("linear-gradient(%ddeg", angle)
	for _, s := range stops {
		result += fmt.Sprintf(", %s %d%%", s.Color, s.Position)
	}
	return result + ")"
}

func main() {
	stops := []Stop{
		{"#6366f1", 0},
		{"#ec4899", 50},
		{"#f59e0b", 100},
	}
	fmt.Println(buildGradient(135, stops))
	// -> "linear-gradient(135deg, #6366f1 0%, #ec4899 50%, #f59e0b 100%)"
}

Veelgestelde vragen

Wat is het verschil tussen linear-gradient en radial-gradient?
linear-gradient() laat kleuren overgaan langs een rechte lijn op een gegeven hoek, terwijl radial-gradient() kleuren naar buiten laat stralen vanuit een middelpunt in een cirkel of ellips. Lineaire verlopen zijn de standaardkeuze voor paginaachtergronden en overlays. Radiale verlopen werken beter voor spotlight-effecten en cirkelvormige UI-elementen.
Hoe stel ik de richting van een lineair verloop in?
Gebruik een hoek in graden (bijv. 90deg voor links-naar-rechts, 180deg voor boven-naar-onder) of een trefwoord (to right, to bottom left). De hoek draait met de klok mee vanuit de onderkant: 0deg wijst omhoog, 90deg wijst naar rechts. Je kunt ook 'to top right' gebruiken om een hoek te targeten, en de browser berekent de exacte hoek op basis van de beeldverhouding van het element.
Kan ik een CSS-verloop animeren?
Browsers kunnen niet rechtstreeks interpoleren tussen twee verloopwaarden via CSS-overgangen. De gebruikelijke oplossingen zijn: de background-position animeren van een te groot verloop, @property gebruiken om individuele kleurstopwaarden als aangepaste eigenschappen te animeren, of cross-fading met opacity op een pseudo-element. De @property-aanpak (ondersteund in Chrome en Edge sinds 2020, Firefox sinds 2024) is de schoonste oplossing.
Hoeveel kleurstops kan een verloop hebben?
De CSS-specificatie stelt geen maximum. Browsers verwerken verlopen met tientallen stops zonder prestatieproblemen. In de praktijk gebruiken de meeste verlopen 2 tot 5 stops. Elke stop kan een kleur en een optionele positie als percentage of lengtewaarde opgeven. Je kunt ook twee posities per stop definiëren om een harde kleurband zonder overgang te maken.
Wat is het verschil tussen een verloop en een afbeelding?
In CSS is een verloop een berekende afbeelding. Het deelt dezelfde renderpijplijn als url()-afbeeldingen en kan overal worden gebruikt waar een afbeeldingswaarde geldig is: background-image, list-style-image, border-image en mask-image. Het verschil is dat een verloop door de browser wordt gegenereerd tijdens het renderen, schaalt naar elke grootte zonder kwaliteitsverlies en nul bytes toevoegt aan je paginagewicht, omdat er geen bestand wordt gedownload.
Hoe maak ik een verloop met een harde kleurstop (zonder overgang)?
Plaats twee kleurstops op dezelfde positie. Bijvoorbeeld: linear-gradient(to right, #6366f1 50%, #ec4899 50%) creëert een scherpe splitsing zonder overmenging tussen de kleuren. Je kunt ook de twee-posities-syntax gebruiken: linear-gradient(to right, #6366f1 0% 50%, #ec4899 50% 100%) om elke band expliciet te definiëren.
Wordt de conic-gradient-functie in alle browsers ondersteund?
conic-gradient() wordt ondersteund in Chrome 69+, Firefox 83+, Safari 12.1+ en Edge 79+. Vanaf 2024 overschrijdt de wereldwijde browserondersteuning 95% volgens Can I Use-gegevens. Er is geen vendor-prefix nodig. Voor het kleine percentage gebruikers met oudere browsers kun je een solide background-color instellen als fallback vóór de verloopverklaring.