CodeBlanks Logo Icon CodeBlanks

:nth-child

CSS kursu · Orta seviye · Ders 14/98

:nth-child ile kardeş seçimini öğrenirsin.

:nth-child nedir?

:nth-child sözde sınıfı, bir öğeyi kardeşleri arasındaki sırasına göre seçer. Parantez içinde bir sayı ya da formül verirsin.

Örneğin li:nth-child(2), liste içindeki ikinci öğeyi yakalar. tr:nth-child(3) ise tablodaki üçüncü satırı eşleştirir. Sıra bir tabandan başlar, sıfırdan değil.

Bu sözde sınıf, sınıf eklemek yerine yalnızca konumla stillendirme yapmanı sağlar.

even ve odd ile zebra çizgiler

Paranteze even yazarsan çift sıradaki, odd yazarsan tek sıradaki kardeşler seçilir. İngilizce even çift, odd tek demektir.

Bu, uzun tablolarda zebra çizgili (alternatif arka plan) görünüm yaratmanın standart yoludur. tr:nth-child(even) { background: #f5f5f5; } yazarsan her ikinci satır gri olur; okuma kolaylaşır.

n değişkeni ile formüller

:nth-child, an+b formülünü de kabul eder. Burada n sıfırdan başlayan bir sayıcıdır.

  • 2n — çift sıra (even ile aynı)
  • 2n+1 — tek sıra (odd ile aynı)
  • 3n — her üçüncü öğe

Formüller yalnızca tekil sayıları değil, düzenli aralıkları yakalar. Bu, büyük listelerde belirli aralıklarla vurgu yapmak için kullanışlıdır.

Uygulama Tabloya zebra çizgi ekle

Bir tr:nth-child(even) seçicisi yaz ve içine background: #f5f5f5 ekle. Böylece tablodaki çift sıradaki satırlar açık gri olur.

Örnek çözümü göster
/* çift sıradaki satırları renklendir */
tr:nth-child(even) {
  background: #f5f5f5;
}

Kendini test et

  1. li:nth-child(2) hangi öğeyi eşleştirir?

    li:nth-child(2) {
      font-weight: bold;
    }
    • Listedeki son öğeyi
    • Listedeki tüm öğeleri
    • Listedeki ikinci öğeyi
    • İkinci listenin tüm öğelerini
    Cevabı göster

    Listedeki ikinci öğeyi — Doğru. :nth-child(2), kardeşler arasındaki ikinci öğeyi seçer.

  2. Tek sıradaki liste öğeleri için seçici yaz

    li____ {
      background: #fafafa;
    }
    Cevabı göster
    li:nth-child(odd) {
      background: #fafafa;
    }
  3. Formülü eşleştirdiği sırayla eşleştir

    :nth-child(1)
    İlk öğe
    :nth-child(2)
    İkinci öğe
    :nth-child(even)
    Çift sıradakiler
    :nth-child(odd)
    Tek sıradakiler

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