Menu

CSS Gradyan (Renk Geçişi): Radial, Linear ve Conic Gradient

CSS gradyanları, tarayıcının renklerden çizdiği resimlerdir. radial-gradient'i (şekil, boyut, konum), linear-gradient'i (yön ve açılar), conic-gradient'i, renk duraklarını, çizgiler için keskin durakları, tekrarlayan gradyanları ve gradyanlı metni öğren.

Bu sayfada çalıştırılabilir editörler var - düzenle, çalıştır ve sonucu anında gör.

Radial gradyanlar

radial-gradient() renkleri bir merkez noktasından dışarı doğru karıştırır. Her CSS gradyanı gibi bir resimdir, bu yüzden background-image'a (ya da background kısa yazımına) yazılır:

Tam söz dizimi radial-gradient(shape size at position, color stops) şeklindedir. Renklerden önceki her şey isteğe bağlıdır.

ParçaDeğerlerVarsayılan
Şekilcircle, ellipseellipse
Boyutclosest-side, closest-corner, farthest-side, farthest-corner ya da uzunluklarfarthest-corner
Konumat center, at top left, at 30% 70%, at 20px 40pxat center
Renk duraklarıHer biri isteğe bağlı bir konuma sahip iki ya da daha fazla renk

Boyut anahtar kelimesi son renge nerede ulaşılacağını belirler: kutunun en yakın kenarında, en uzak köşesinde ve bu şekilde. Buradaki değerleri değiştir ve gradyanın yeniden çizilmesini izle:

circle farthest-corner at 30% 50%, #f59e0b, #2563eb, ellipse at bottom, white, #16a34a ve circle 40px, #f59e0b 99%, transparent (keskin kenarlı bir nokta) dene.

Linear gradyanlar

linear-gradient() renkleri düz bir çizgi boyunca karıştırır. Önce bir yön ya da açı, sonra renkleri yaz:

Açılar yukarıyı gösteren 0deg'den başlar ve saat yönünde döner, yani 90deg, to right demektir ve 180deg varsayılan to bottom'dır. to right sağdan sola sayfalarda fiziksel kalır; gradyanın okuma yönünü takip etmesi gerekiyorsa onu kendin aynala.

Renk durakları ve keskin duraklar

Her rengin bir konumu olabilir. Konum verilmezse renkler eşit aralıklarla yerleşir. İki renk aynı konumu paylaştığında değişim anlıktır; çizgileri, bayrakları ve ilerleme çubuklarını böyle çizersin:

Bir durak iki konum da alabilir: #111827 12px 24px, 12px'ten 24px'e düz bir şerit çizer.

Conic gradyanlar

conic-gradient() renkleri bir saatin kolları gibi bir merkez noktasının çevresinde döndürür. Keskin duraklarla hiçbir resim ya da JavaScript olmadan bir pasta grafik çizer:

CSS ile çizilmiş bir grafik ekran okuyuculara görünmez, bu yüzden sayıları metin olarak da yaz.

Gradyanlı metin

Bir gradyan arka planı harflere kırp ve metnin kendisini saydam yap:

.gradient-text {
  background: linear-gradient(90deg, #2563eb, #db2777);
  -webkit-background-clip: text; /* older browsers need the prefix */
  background-clip: text;
  color: transparent;
}

Düz bir color yedeğini aklında tut: kırpma başarısız olursa metin kaybolur. Gradyanlı metnin kontrastı da düzensizdir, bu yüzden onu yalnızca büyük başlıklar için kullan.

Gradyanlar resimlerle ve başka gradyanlarla tek bir background-image listesinde üst üste konabilir; katmanları, boyutu ve konumu arka plan resmi sayfası anlatıyor.

Sık yapılan hatalar

  • background-color: linear-gradient(...). Gradyan bir resimdir: background-image ya da background kullan.
  • Yanlış yönde dereceler. 0deg sağı değil yukarıyı gösterir. 90deg sağa doğru gider.
  • Yüksekliği olmayan bir elementte gradyan. Hiçbir şey görünmez; ona içerik ya da bir boyut ver.
  • Bulanık ara renkler. Kırmızı ve yeşil gibi iki doygun zıt rengi karıştırmak sRGB'de gri kahverengiden geçer. Bir ara durak ekle ya da başka bir renk uzayında karıştır: linear-gradient(in oklch, red, green).
  • Büyük, ince gradyanlarda bantlanma. Geniş bir alana yayılan birbirine çok yakın renkler basamaklar gösterir; duraklar arasında biraz daha fazla kontrast yardımcı olur.

Sıkça Sorulan Sorular

CSS'te radial gradient nasıl yapılır?

background-image: radial-gradient(#93c5fd, #1e3a8a); kullan. Renklerin önüne bir şekil ve konum ekle, örneğin radial-gradient(circle at top left, #93c5fd, #1e3a8a).

radial-gradient'te circle ile ellipse arasındaki fark nedir?

ellipse (varsayılan) kutunun oranlarına göre esner, bu yüzden geniş bir kutuda geniştir. circle ise kutunun şekli ne olursa olsun gradyanı yuvarlak tutar.

Linear gradient'in yönü nasıl ayarlanır?

Önce bir yön ya da açı yaz: linear-gradient(to right, red, blue) ya da linear-gradient(45deg, red, blue). Varsayılan to bottom'dır (180deg); 0deg yukarıyı gösterir ve açılar saat yönünde döner.

Yumuşak bir geçiş yerine keskin çizgiler nasıl yapılır?

İki renge aynı durak konumunu ver: linear-gradient(90deg, #2563eb 50%, #f59e0b 50%) rengi ortada hiç geçiş olmadan değiştirir. repeating-linear-gradient bu tür durakların oluşturduğu bir deseni tekrarlar.

Gradyan background-color olarak kullanılabilir mi?

Hayır. Gradyan bir resimdir, bu yüzden background-image'a ya da background kısa yazımına yazılır. background-color: linear-gradient(...) geçersizdir ve yok sayılır.

Coddy programming languages illustration

Coddy ile kodlamayı öğren

BAŞLA