CSS Gradient Generator

Bygg linjära och radiella CSS-gradienter visuellt och kopiera CSS-koden

Prova ett exempel
Typ
Vinkel135°

Färgstoppar

0%
100%

CSS-utdata

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

Vad är en CSS-gradient?

En CSS gradient generator är ett visuellt verktyg som hjälper dig att bygga mjuka färgövergångar utan att skriva gradientsyntax för hand. I CSS är en gradient en mjuk övergång mellan två eller fler färger, renderad direkt av webbläsaren utan någon bildfil. CSS Image Module Level 4-specifikationen definierar gradientfunktioner som en typ av bildvärde, vilket innebär att de kan användas överallt där background-image, list-style-image eller border-image är giltiga. Eftersom webbläsaren rastrerar gradienter vid renderingstillfället skalas de till vilken upplösning som helst och ger aldrig suddiga artefakter på high-DPI-skärmar. Att använda en CSS gradient generator sparar tid och minskar gissandet — du justerar färger och positioner visuellt och kopierar sedan den färdiga CSS-regeln.

CSS stöder tre huvudsakliga gradientformer: linjär (längs en rät linje), radiell (utåt från en mittpunkt) och konisk (en svepning runt en mittpunkt). Varje form tar emot en lista med färgstoppar, där du anger färgen och valfritt en position (procentandel eller längd). Webbläsaren interpolerar färger mellan stopparna med färgrymden sRGB som standard, men CSS Color Level 4 tillåter att man anger andra färgrymder som oklch och lab för perceptuellt mjukare övergångar.

Gradienter ersätter bildbaserade bakgrunder för de flesta dekorativa ändamål på webben. En enda CSS-regel producerar det som tidigare krävde en Photoshop-export och en HTTP-förfrågan. De är upplösningsoberoende, kräver noll nätverksbandbredd utöver själva CSS:en och kan animeras eller övergås med vanliga CSS-egenskaper. Gradientsyntaxen har varit stabil i alla större webbläsare sedan 2013, och den oprefikerade formen fungerar i Chrome, Firefox, Safari och Edge utan reservalternativ.

Varför använda denna CSS Gradient Generator?

Att skriva gradientsyntax för hand innebär att gissa på stopppositioner, kontrollera vinkelsvärden och upprepade gånger uppdatera webbläsaren för att se resultatet. En visuell byggare låter dig se gradienten medan du skapar den, justera stopp genom att dra och kopiera den slutliga CSS:en när den ser rätt ut.

Visuell förhandsvisning i realtid
Se gradienten uppdateras i realtid när du ändrar färger, positioner och vinklar. Du behöver inte växla mellan din editor och webbläsaren.
🔒
Integritetsfokuserad bearbetning
All rendering sker i din webbläsare. Ingen färgdata eller gradientkonfigurationer skickas till någon server.
🎨
Flera gradienttyper
Bygg linjära och radiella gradienter med full kontroll över riktning, vinkel och färgstopppositioner. Kopiera CSS:en med ett klick.
📋
Inget konto krävs
Öppna sidan och börja bygga. Ingen registrering, ingen e-postbarriär, inga hastighetsbegränsningar. Fungerar offline när den väl är inläst.

Användningsfall för CSS Gradient Generator

Frontend-utveckling
Bygg bakgrunder för hero-sektioner, kortöverlägg och hover-tillstånd för knappar. Förhandsgranska gradienten i målmåtten och klistra sedan in CSS:en direkt i din stilmall eller Tailwind-konfiguration.
E-postmallsdesign
Vissa e-postklienter stöder CSS-gradienter i inline-stilar. Generera exakt gradientkod och infogar den på elementet, med en solid reservfärg för klienter som inte renderar gradienter.
Designprototypning
När du itererar på färgscheman i webbläsaren istället för i Figma, generera gradientbakgrunder snabbt. Jämför flera alternativ sida vid sida utan att exportera tillgångar.
DevOps-instrumentpanelsstyling
Statusinstrumentpaneler och övervakningsgränssnitt använder färggradienter för att representera allvarlighetsintervall (grönt till rött) eller datadensitet. Generera gradientvärdena och tillämpa dem på diagrambakgrunder eller statusfält.
Datavisualisering
Diagrambibliotek som D3.js och Recharts accepterar CSS-gradientdefinitioner för areafyllningar och värmekartor. Bygg gradienten visuellt och extrahera sedan stoppfärgerna för din skalfunktion.
Lär dig CSS
Studenter som studerar CSS kan experimentera med gradientsyntax, se hur vinkelförändringar påverkar riktningen och förstå placering av färgstoppar. Den genererade CSS:en är en fungerande referens.

Referens för CSS-gradienttyper

CSS definierar fem gradientfunktioner. De tre primärtyperna (linjär, radiell, konisk) har var sin upprepande variant som kakellägger mönstret. repeating-linear-gradient() och repeating-radial-gradient() är användbara för randiga bakgrunder och koncentriska ringar. Alla gradientfunktioner accepterar färgstoppar i vilket CSS-färgformat som helst: HEX, RGB, HSL, namngivna färger eller oklch. Webbläsarstödet för alla fem funktionerna är i praktiken universellt i Chrome, Firefox, Safari och Edge — inga leverantörsprefix krävs.

FunktionExempelsyntaxRiktningVanlig användning
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

Linjär vs radiell vs konisk gradient

Varje gradienttyp mappar färger till geometri på olika sätt. Att välja rätt typ beror på den visuella effekt du behöver, inte på en kvalitetsskillnad mellan dem. För de flesta sidbakgrunder och sektionsavdelare är en linjär gradient rätt standardval — den är enklast att resonera kring och mest förutsägbar för element av varierande storlekar. Radiella och koniska gradienter passar bättre för specifika visuella effekter där den cirkulära eller rotationsmässiga geometrin är meningsfull snarare än dekorativ.

linear-gradient()
Färger övergår längs en rät linje definierad av en vinkel (0deg = nedifrån uppåt, 90deg = vänster till höger) eller ett nyckelord som 'to right'. Den vanligaste typen, används för bakgrunder, överlägg och förloppsindikatorer. Stöder flera färgstoppar på godtyckliga positioner.
radial-gradient()
Färger strålar utåt från en mittpunkt i en cirkel eller ellips. Styr form, storlek och mittposition med syntaxen. Användbar för spotlight-effekter, vinjetter och cirkulära UI-element som märken eller avatarringor.
conic-gradient()
Färger sveper runt en mittpunkt som visarnas rörelse på ett ur. Startvinkeln kan konfigureras med 'from Xdeg'. Användbar för cirkeldiagramsegment, färghjul och rotationsladdningsindikatorer. Kräver minst två stopp; att upprepa den första färgen i slutet skapar en sömlös slinga.

Kodexempel

Exempel på att generera och tillämpa CSS-gradienter programmatiskt i JavaScript, Python, CSS och Go. Varje exempel producerar giltiga CSS-gradientsträngar som du kan använda direkt i stilmallar eller inline-stilar.

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%)"
}

Vanliga frågor

Vad är skillnaden mellan linear-gradient och radial-gradient?
linear-gradient() övergår färger längs en rät linje vid en given vinkel, medan radial-gradient() övergår färger utåt från en mittpunkt i en cirkel eller ellips. Linjära gradienter är standardvalet för sidbakgrunder och överlägg. Radiella gradienter fungerar bättre för spotlight-effekter och cirkulära UI-element.
Hur ställer jag in riktningen på en linjär gradient?
Använd en vinkel i grader (t.ex. 90deg för vänster-till-höger, 180deg för uppifrån-och-ner) eller ett nyckelord (to right, to bottom left). Vinkeln roterar medurs från botten: 0deg pekar uppåt, 90deg pekar åt höger. Du kan också använda 'to top right' för att rikta mot ett hörn, och webbläsaren beräknar den exakta vinkeln baserat på elementets bildförhållande.
Kan jag animera en CSS-gradient?
Webbläsare kan inte interpolera direkt mellan två gradientvärden med CSS-övergångar. Vanliga lösningar är: att animera background-position på en överdimensionerad gradient, att använda @property för att animera enskilda färgstoppvärden som anpassade egenskaper, eller att tona med opacity på ett pseudoelement. @property-metoden (stöds i Chrome och Edge sedan 2020, Firefox sedan 2024) är den renaste lösningen.
Hur många färgstoppar kan en gradient ha?
CSS-specifikationen anger inget maximum. Webbläsare hanterar gradienter med dussintals stopp utan prestandaproblem. I praktiken använder de flesta gradienter 2 till 5 stopp. Varje stopp kan ange en färg och en valfri position som ett procentvärde eller ett längdvärde. Du kan också definiera två positioner per stopp för att skapa ett hårt färgband utan övergång.
Vad är skillnaden mellan en gradient och en bild?
I CSS är en gradient en beräknad bild. Den delar samma renderingspipeline som url()-bilder och kan användas överallt där ett bildvärde är giltigt: background-image, list-style-image, border-image och mask-image. Skillnaden är att en gradient genereras av webbläsaren vid renderingstillfället, skalas till vilken storlek som helst utan kvalitetsförlust och lägger till noll byte i din sidvikt eftersom ingen fil laddas ner.
Hur skapar jag en gradient med ett hårt färgstopp (ingen övergång)?
Placera två färgstoppar på samma position. Till exempel skapar linear-gradient(to right, #6366f1 50%, #ec4899 50%) en skarp delning utan blandning mellan färgerna. Du kan också använda tvåpositionssyntaxen: linear-gradient(to right, #6366f1 0% 50%, #ec4899 50% 100%) för att definiera varje band explicit.
Stöds conic-gradient-funktionen i alla webbläsare?
conic-gradient() stöds i Chrome 69+, Firefox 83+, Safari 12.1+ och Edge 79+. Från och med 2024 överstiger det globala webbläsarstödet 95% enligt Can I Use-data. Inget leverantörsprefix behövs. För den lilla andel användare på äldre webbläsare, ange en solid background-color som reservalternativ innan gradientdeklarationen.