Marked
Priser
Logg innStart
DesignguidenCSS og nett
CSS og nett

SVG feTurbulence: filtre for støy, korn og tekstur

Én filterprimitiv lager nesten alle teksturer på nettet: korn over en gradient, papir bak et kort, en ujevn kant. Her ser du hva hvert attributt gjør, med oppskrifter som fungerer.

GradientlyVerifisert Gradiently-konto·1. oktober 2026·5 min lesetid
Omslag: Sapphire Casino · GR·N417·BV

Kortversjonen

  • SVG feTurbulence er en filterprimitiv som lager Perlin-støy. Den kan brukes som korn, papir, skyer eller en kilde for forskyvning.
  • Attributtet baseFrequency angir størrelsen på støyen. Høye verdier rundt 0,6 til 0,9 gir fine korn, og lave verdier rundt 0,01 til 0,05 gir store, myke skyer.
  • type="fractalNoise" lager myk, jevn støy som passer til korn og papir, mens type="turbulence" lager skarpere, bølgete støy som passer til marmor og vann.
  • En liten støyflis med stitchTiles="stitch", lagt over en gradient med lav ugjennomsiktighet, tilfører tekstur og skjuler bånddannelse med svært lite ressursbruk.
  • feTurbulence krever mye beregning over store områder. Render derfor én flis én gang fremfor å animere filteret over hele skjermen.
På denne siden
Hva hvert feTurbulence-attributt gjørOppskrift: korn over en gradientOppskrift: papirteksturOppskrift: vridde kanter med feDisplacementMapYtelse og oppførsel i nettlesere

SVG feTurbulence er en filterprimitiv som fyller området sitt med Perlin-støy. Alene blir resultatet et felt med farget støy. Kombinert med andre primitiver blir det filmkorn, papirfibre, skyer, marmor eller en kilde for å vri former. Du styrer den med fem attributter: type, baseFrequency, numOctaves, seed og stitchTiles. De fleste teksturer på moderne nettsteder, inkludert kornene i kornete gradienter, begynner her.

html
<svg xmlns="http://www.w3.org/2000/svg" width="300" height="300">
  <filter id="noise">
    <feTurbulence type="fractalNoise" baseFrequency="0.75" numOctaves="3" stitchTiles="stitch" />
  </filter>
  <rect width="100%" height="100%" filter="url(#noise)" />
</svg>
Det enkleste: et filter som lager støy, brukt på et rektangel. Resultatet er flerfarget støy til du fjerner fargen.

Hva hvert feTurbulence-attributt gjør

typeturbulence (standard) eller fractalNoise

Effekt

Bølgete og skarpt, eller mykt og jevnt
baseFrequency

Verdier

Ett tall, eller to for x og y

Effekt

Lavere verdi gir større strukturer
numOctaves

Verdier

Heltall, standard 1

Effekt

Lag med finere detaljer, men lavere hastighet
seedEt hvilket som helst tall, standard 0

Effekt

Et annet tilfeldig mønster
stitchTiles

Verdier

noStitch (standard) eller stitch

Effekt

Jevner ut kanter slik at fliser gjentas uten skjøter
AttributtVerdierEffekt
typeturbulence (standard) eller fractalNoiseBølgete og skarpt, eller mykt og jevnt
baseFrequencyEtt tall, eller to for x og yLavere verdi gir større strukturer
numOctavesHeltall, standard 1Lag med finere detaljer, men lavere hastighet
seedEt hvilket som helst tall, standard 0Et annet tilfeldig mønster
stitchTilesnoStitch (standard) eller stitchJevner ut kanter slik at fliser gjentas uten skjøter
De fem attributtene. Endre ett om gangen når du justerer, fordi de påvirker hverandre.

baseFrequency er det du kommer til å justere mest. Det måles i sykluser per brukerenhet, så 0.8 pakker strukturene tett sammen, mens 0.02 strekker dem til rolige skyer. To verdier, som baseFrequency="0.01 0.3", strekker støyen langs én akse. Slik etterlignes børstet metall og årringer i tre.

0,8 til 0,9

Ser ut som

Fine filmkorn

Bruk

Lag over gradienter og bilder
0,5 til 0,7

Ser ut som

Synlige korn, risografi

Bruk

Plakater, redaksjonelle sider
0,15 til 0,3

Ser ut som

Grove prikker, betong

Bruk

Bakgrunner, stein
0,02 til 0,05

Ser ut som

Skyer, røyk

Bruk

Papirfibre, myk belysning
0,005 til 0,01

Ser ut som

Store, rolige bølger

Bruk

Forskyvning, marmor
baseFrequencySer ut somBruk
0,8 til 0,9Fine filmkornLag over gradienter og bilder
0,5 til 0,7Synlige korn, risografiPlakater, redaksjonelle sider
0,15 til 0,3Grove prikker, betongBakgrunner, stein
0,02 til 0,05Skyer, røykPapirfibre, myk belysning
0,005 til 0,01Store, rolige bølgerForskyvning, marmor
Utgangspunkter for en flis som er rundt 300 piksler bred. Støyen skaleres med SVG-en, så en flis som vises større, ser grovere ut.

type="fractalNoise"

  • Myk, skyaktig og jevnt fordelt
  • Bra til korn, papir og tåke
  • Det vanlige valget for overliggende lag

type="turbulence"

  • Skarpere, med mørke folder
  • Bra til marmor, ild og vann
  • Ser urolig ut som et helt overliggende lag

Oppskrift: korn over en gradient

Det nyttigste feTurbulence gjør, er å tilføre korn. En ren digital gradient får synlige bånd, særlig i mørke partier. Lett støy bryter opp båndene og får overflaten til å minne om trykk. Fremgangsmåten er å lage støyen, fjerne fargen og deretter legge den svakt over gradienten.

html
<svg xmlns="http://www.w3.org/2000/svg" width="240" height="240">
  <filter id="grain" x="0" y="0" width="100%" height="100%">
    <feTurbulence type="fractalNoise" baseFrequency="0.8" numOctaves="3" stitchTiles="stitch" result="noise" />
    <feColorMatrix in="noise" type="saturate" values="0" />
  </filter>
  <rect width="100%" height="100%" filter="url(#grain)" />
</svg>
feColorMatrix med saturate 0 gjør støyen grå. Sett filterområdet til hele rektangelet for å unngå en myk kant.

Lagre dette som grain.svg, eller legg det inn som en data-URI. Gjenta det deretter som fliser i et pseudoelement over gradienten.

css
.hero {
  position: relative;
  isolation: isolate;
  background: linear-gradient(160deg, #0f0b1e 0%, #312e81 55%, #6d28d9 100%);
}

.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: url("/grain.svg");
  background-size: 240px;
  opacity: 0.12;
  mix-blend-mode: overlay;
  pointer-events: none;
}
Blandingsmodusene overlay og soft-light bevarer gradientens farge og tilfører bare tekstur. Begynn med 0,08 til 0,15 i ugjennomsiktighet, og vurder resultatet på hele skjermen.
Bakgrunnen under kornenelinear-gradient(160deg, #0f0b1e 0%, #312e81 55%, #6d28d9 100%)
Mørke fiolette gradienter som denne er der bånddannelse synes best, og nettopp der korn gjør mest nytte. Les mer om årsaken i bånddannelse i gradienter.

Oppskrift: papirtekstur

Papir er lavfrekvent støy som blir til relieff med en lyskilde. feDiffuseLighting behandler støyen som et høydekart og belyser den fra én side. Det gir de myke forhøyningene i et ark bomullspapir.

html
<filter id="paper" x="0" y="0" width="100%" height="100%">
  <feTurbulence type="fractalNoise" baseFrequency="0.04" numOctaves="5" result="noise" />
  <feDiffuseLighting in="noise" lighting-color="#f7f1ea" surfaceScale="2" result="lit">
    <feDistantLight azimuth="45" elevation="60" />
  </feDiffuseLighting>
  <feBlend in="SourceGraphic" in2="lit" mode="multiply" />
</filter>
Øk surfaceScale for et grovere ark. Senk elevation for et sidelys som fremhever hver fiber.

Kombiner det med varme, brukket hvite bakgrunner. Bakgrunner med papirtekstur har paletter som passer.

Oppskrift: vridde kanter med feDisplacementMap

Støy kan også flytte piksler. feDisplacementMap leser støyen og forskyver hver piksel i kilden med opptil scale enheter. Det gir håndtegnede linjer, smeltende tekst og bølgete vann.

html
<filter id="wobble">
  <feTurbulence type="turbulence" baseFrequency="0.02" numOctaves="2" seed="3" result="warp" />
  <feDisplacementMap in="SourceGraphic" in2="warp" scale="10" xChannelSelector="R" yChannelSelector="G" />
</filter>

<text x="40" y="120" font-size="96" font-weight="700" filter="url(#wobble)">Wavy</text>
En scale-verdi på 4 til 12 virker håndlaget. Over 30 blir kilden ugjenkjennelig. Endre seed for å få en annen ujevnhet.

Tekst forblir tekst

Filtrert SVG-tekst er fortsatt ekte tekst, så den kan markeres og leses av skjermlesere. Hold vridningen dempet på alt folk må kunne lese.

Ytelse og oppførsel i nettlesere

feTurbulence fungerer i alle nåværende nettlesere, men beregnes på CPU-en i mange av dem. Ressursbruken øker med arealet og antallet oktaver. En flis på 240 piksler beregnes én gang og gjentas, noe som krever lite. Et filter over hele skjermen på et levende element beregnes på nytt hver gang elementet tegnes på nytt. Det kan være tregt på mobil.

  1. 1

    Bruk fliser

    Render støy i en liten SVG med stitchTiles="stitch", og gjenta den som et bakgrunnsbilde.

  2. 2

    Hold antallet oktaver lavt

    numOctaves over 4 tilfører sjelden synlige detaljer i kornstørrelse, men krever ressurser hver gang.

  3. 3

    Unngå å animere filteret

    Animering av baseFrequency eller seed tvinger frem en full ny beregning for hvert bilde. Flytt heller en statisk flis med en transformasjon.

  4. 4

    Sjekk begge temaene

    Korn som ser riktige ut på mørkt, kan se skitne ut på lyst. Juster ugjennomsiktigheten for hvert tema, som i gradienter i mørk modus.

For en variant med bare CSS, se støytekstur i CSS. Hvis du vil ha korn uten å justere filtre, har hver Mark fra Gradiently sine egne korn og sitt eget materiale som en del av oppskriften, rendret direkte i størrelsen du designer i.

Korn, uten skarpt lys.
Fin støy over en dyp gradient

En Mark med korn innebygd i overflaten. Støyen er en del av oppskriften, så den holder samme skala i alle størrelser.

Finn en gradient som bare er din

Bla gjennom tusenvis av Marks, design gratis med hvilken som helst av dem, og sikre deg den som føles som deg.

Bla i Markedet

Spørsmål folk stiller

Hva gjør feTurbulence i SVG?

Den lager Perlin-støy i et SVG-filter. Du kan vise støyen direkte som tekstur eller sende den inn i andre primitiver som feColorMatrix, feDiffuseLighting eller feDisplacementMap.

Hvilken baseFrequency bør jeg bruke for korn?

Prøv 0,7 til 0,9 med typen fractalNoise og tre oktaver for fine filmkorn. Lavere verdier gir større, mykere strukturer.

Hva er forskjellen mellom fractalNoise og turbulence?

fractalNoise er myk og jevn, og passer til korn og papir. turbulence har skarpere folder og passer til marmor-, ild- eller vanneffekter.

Hvorfor får SVG-støyen synlige skjøter når den gjentas som fliser?

Sett stitchTiles="stitch" på feTurbulence, og sett filterområdet til hele flisen med x, y, width og height. Da passer kantene sammen, og du unngår en myk kant.

Er feTurbulence treg?

Den kan være det over store områder eller når den animeres, fordi støyen beregnes på nytt hver gang elementet tegnes på nytt. En liten, statisk flis som gjentas som bakgrunn, krever lite.

Del denne guiden

Skrevet av GradientlyVerifisert Gradiently-konto

Teamet bak Gradiently, et designverktøy bygget rundt Marks: levende gradienter som gjør at alt du designer ser ut som ditt.

Se profilen vår

På denne siden

Hva hvert feTurbulence-attributt gjørOppskrift: korn over en gradientOppskrift: papirteksturOppskrift: vridde kanter med feDisplacementMapYtelse og oppførsel i nettlesere

Del denne guiden

Neste i CSS og nett

Mesh-gradienter i SVG: hva som fungerer i dag

Les videre

Alle guider om CSS og nett
Gradienter

Kornete gradienter: hvorfor litt støy får farge til å se påkostet ut

5 min lesetid

En ren gradient ser ut som en skjermstandard. Den samme gradienten med et fint lag korn ser ut som et trykk, et stillbilde fra en film eller en malt vegg. Her er hvorfor, hvor mye du bør legge til, og hvordan.

CSS og nett

CSS-støytekstur: legg korn på gradienter med SVG

4 min lesetid

Et svakt lag med støy skjuler banding og får flat skjermfarge til å føles som trykk eller film. Her er SVG-filteret bak det, justert og klart til å limes inn.

Gradienter

Hvorfor gradienten din har striper, og hvordan du fikser banding

5 min lesetid

Du laget en jevn gradient, og den kom tilbake med striper. Det er banding, og det har en enkel årsak og en håndfull pålitelige løsninger. Her er regnestykket, og så kurene.

Finn uttrykket som bare er ditt.

Hver Mark er en levende bakgrunn med én eier. Prøv en ledig Mark og sikre deg din når det føles riktig.

Begynn å designe

Sjekk et sertifikat

Skriv inn et sertifikatnummer eller en Mark-kode for å se hvem som eier den.

Virker med ChatGPT og Claude

Be AI-en din om et design. Den lager det i din Mark, klart til å redigere.

ChatGPTClaude
Slik kobler du til

Produkt

  • Marked
  • Utforsk
  • Priser
  • Sertifikater

Lær

  • Designguiden
  • Hjelpesenter
  • Hva er nytt

Utviklere

  • Oversikt
  • ChatGPT og Claude
  • API-referanse
  • API-nøkler

Selskap

  • Om oss
  • Kontakt oss
  • Logg inn

Juridisk

  • Vilkår
  • Personvern
  • Refusjoner
  • Mark-beskyttelse
  • Informasjonskapsler
  • Alle retningslinjer
Beveg deg over bokstavene. Hver av dem bærer en ekte Mark.Trykk på en bokstav for å se Marken.Ett navn. Ti Marks inni det.
© 2026 Gradiently