CodeBlanks Logo Icon CodeBlanks

Opaklık ve alpha

CSS kursu · Başlangıç · Ders 38/82

opacity ve rgba/hsla ile saydamlığı öğrenirsin.

opacity özelliği

opacity bir öğenin saydamlığını 0.0 ile 1.0 arasında ayarlar. 1 tam görünür, 0 tamamen saydam, 0.5 yarı saydamdır.

Önemli nokta: opacity öğenin tümünü etkiler — metin, arka plan, kenarlık ve çocuk öğeler dahil. Saydam bir kartın içindeki yazı da saydamlaşır. Bu yüzden yalnızca arka planı saydamlaştırmak istiyorsan rgba() kullanmak daha doğru olur.

Alpha kanalı: rgba ve hsla

Alpha kanalı bir rengin saydamlığını renk değerinin içine katar. rgba(0, 0, 0, 0.5) son basamakta 0–1 arası bir değer alır; 1 tam görünür, 0 tam saydam.

Aynı mantık hsla() için de geçerlidir: hsla(355, 78%, 56%, 0.4). Bu sayede yalnızca rengin saydamlığını değiştirirsin; metin veya başka özellikler etkilenmez. Koyu bir zemin üzerine yarı saydam bir katman koymak için idealdir.

opacity ile alpha farkı

opacity ile rgba() benzer görünür ama farklı çalışır. opacity: 0.5 öğenin tümünü saydamlaştırır; metin dahil her şey soluk görünür.

background: rgba(0, 0, 0, 0.5) ise yalnızca arka planı saydamlaştırır; metin olduğu gibi kalır. Bu yüzden bir başlığın üstündeki karartma katmanını rgba() ile, bir kartın tümünü silikleştirmeyi opacity ile yaparsın.

Uygulama .overlay ve .card için saydamlık yaz

Bir .overlay sınıf seçicisi ekle ve background özelliğini rgba(0, 0, 0, 0.5) değeriyle ata. Sonra bir .card sınıf seçicisi ekle ve opacity özelliğini 0.8 değeriyle ata.

Örnek çözümü göster
/* .overlay ve .card için saydamlık ekle */
.overlay {
  background: rgba(0, 0, 0, 0.5);
}
.card {
  opacity: 0.8;
}

Kendini test et

  1. opacity: 0.5 atanmış bir kartın içeriği ne olur?

    .card {
      background: white;
      opacity: 0.5;
    }
    • Yalnızca arka planı yarı saydamlaştırır
    • Yalnızca kenarlığı etkiler
    • Kartın arka planı, metni ve çocukları yarı saydamlaşır
    • Kartı tamamen görünmez yapar
    Cevabı göster

    Kartın arka planı, metni ve çocukları yarı saydamlaşır — Doğru. opacity tüm öğeyi ve çocuklarını yarı saydam yapar; yalnızca arka planı değil.

  2. Yarı saydam karartma katmanı için alpha değerini yaz

    .overlay {
      background: rgba(0, 0, 0, ____);
    }
    Cevabı göster
    .overlay {
      background: rgba(0, 0, 0, 0.5);
    }
  3. Saydamlık değerini etkisine eşle

    opacity: 0.5
    Tüm öğe yarı saydam
    rgba(0,0,0,0.5)
    Yalnızca renk yarı saydam
    opacity: 0
    Öğe tamamen görünmez
    rgba(0,0,0,1)
    Renk tam görünür

Başlangıç bölümündeki tüm dersler