CodeBlanks Logo Icon CodeBlanks

::before ve ::after

CSS kursu · Orta seviye · Ders 19/98

::before ve ::after sözde elementlerini öğrenirsin.

::before ve ::after nedir?

CSS'te sözde element (pseudo-element) bir öğenin belirli bir parçasını biçimler; HTML'ye yeni etiket eklemeden. En bilinen ikisi ::before ve ::after'dur. Seçicinin hedeflediği öğenin içine, içerik öncesine ve sonrasına yeni bir kutu yerleştirirler.

Çift kolon (::) sözde element olduğunu gösterir. Tek kolon da çalışır ama çift kolon modern yazımdır. Bu kutular HTML kaynağında yer almaz; yalnızca CSS ile görünür kılınır.

Sözde element yazımı

Sözde element yazımı: seçicinin yanına çift kolon, sonra ad. a::after her bağlantının sonuna bir kutu ekler; .card::before ise class="card" taşıyan her öğenin başına.

Bu kutular gerçek birer öğe gibi davranır: renk, kenar boşluğu, hatta arka plan verilebilir. HTML kaynağında görünmezler; tarayıcı bunları canlı olarak çizer.

Uygulama ::before ile rozet ekle

Bir .badge sınıf seçicisine ::before sözde elementi ekle. İçine bir content bildirimi (tırnak içinde bir metin), color: white ve background: red tanımla.

Örnek çözümü göster
/* rozet için ::before ekle */
.badge::before {
  content: "Yeni";
  color: white;
  background: red;
}

Kendini test et

  1. ::after sözde elementi nereye yerleşir?

    a::after {
      content: '↗';
    }
    • Etiketin hemen öncesine, dışına
    • Öğenin içine, içeriğin sonrasına
    • Yalnızca body öğesinin içine
    • Seçicinin yanına, bağımsız bir öğe olarak
    Cevabı göster

    Öğenin içine, içeriğin sonrasına — Doğru. ::after öğenin içine, mevcut içeriğin sonrasına bir kutu ekler.

  2. ::after sözde elementini yaz

    ____ {
      content: '↗';
    }
    Cevabı göster
    ::after {
      content: '↗';
    }
  3. Sözde elementi hedefine eşle

    ::before
    İçeriğin öncesine kutu
    ::after
    İçeriğin sonrasına kutu
    ::first-letter
    İlk harf
    ::selection
    Seçili metin

Orta seviye bölümündeki tüm dersler