WCAG 2.4.6 · AA Seviyesi · EN 301 549 9.2.4.6

Başlıklar ve Etiketler

Başlıkların ve etiketlerin içeriğin ya da kontrolün konusunu ve amacını anlatmasını ister.

Kısaca

Başlıklar bir bölümün ne hakkında olduğunu, etiketler ise bir alana ne girileceğini ya da bir kontrolün ne yaptığını söyler. "Bölüm 1", "Ayrıntılar" ve "Alan" hiçbir şey söylemez. Ekran okuyucu kullanıcıları başlıklar ve form alanları arasında atlar ve bunların söylediklerine güvenir.

Bu kriter, başlıkların ve etiketlerin konuyu ya da amacı anlatmasını ister. Başlıkların ya da etiketlerin var olmasını şart koşmaz, ama varsa açıklayıcı olmalıdır.

Neleri kapsar?

  • Başlıklar: Her başlık, ardından gelen içeriği anlatmalıdır (G130).
  • Etiketler: Bir form alanı ya da kontrol için her etiket, alanın ne için olduğunu anlatmalıdır (G131).
  • Kısa olabilir: Bir etiket, kullanıcıya içeriği anımsatıyorsa tek bir sözcük, hatta tek bir karakter olabilir.
  • Etiket olarak görseller: Bir simge, anlamı bağlamda yaygın olarak anlaşılıyorsa etiket işlevi görebilir; arama alanının yanındaki büyüteç gibi.
  • Varlık ayrıdır: Bu kriter etiketlerin var olmasını şart koşmaz. Bu 3.3.2'dir. Doğru işaretlenmiş olmaları 1.3.1, adın görünür metni içermesi 2.5.3'tür.
  • Gerektiğinde benzersiz: Birkaç adres bloğu gibi tekrarlanan alanlar, onları birbirinden ayıran etiketlere ihtiyaç duyar.
  • Kapsam dışı notlar: Uzun içerik boyunca bölüm başlıkları 2.4.10'dur (AAA düzeyi).

Kimleri etkiler?

Başlıklar ve form kontrolleri arasında gezinen ekran okuyucu kullanıcıları. İçeriği öngörmek için net başlıklara güvenen bilişsel ya da kısa süreli bellek güçlüğü olan kişiler. İhtiyaç duyduklarını bulmak için başlıkları kullanan yavaş okuyanlar ve tarayanlar. Kontrolleri etiketiyle seçen ses denetimi kullanıcıları.

EAA ve EN 301 549'da

Avrupa Erişilebilirlik Yasası (Direktif (AB) 2019/882) 28 Haziran 2025'ten sonra piyasaya sunulan kapsamdaki ürün ve hizmetler için geçerlidir. Yasanın 47. gerekçesi web siteleri ve mobil uygulamalar için dört ilkeyi sayar: algılanabilirlik, işletilebilirlik, anlaşılabilirlik ve sağlamlık. Açıklayıcı başlıklar ve etiketler, "işletilebilirlik" ilkesinin parçasıdır.

Teknik karşılığı EN 301 549 standardında bulunur. Standart, WCAG 2.4.6'i atıfla alır ve ortama göre ayrı maddelere dönüştürür.

WCAG 2.4.6'in EN 301 549'daki karşılıkları
MaddeOrtamNe ister?
9.2.4.6Web sayfalarıWeb içeriğinin WCAG 2.4.6 kriterini karşılamasını ister.
10.2.4.6Web dışı dokümanlar (PDF, Office dosyaları)Standardın uyguladığı hâllerde dokümanların açıklayıcı başlıklara ve etiketlere sahip olmasını ister.
11.2.4.6Web dışı yazılım (yerel mobil uygulamalar)Yazılımın açıklayıcı başlıklara ve etiketlere sahip olmasını ister.

Kriterin web dışı dokümanlara uygulanıp uygulanmadığı ve nasıl uygulandığı standardın 10. maddesinde belirtilir. Madde numaraları EN 301 549'un "9. + WCAG numarası" düzenine göredir. V3.2.1'de yazılım maddesi, açık ve kapalı işlevsellik için ayrı alt maddelere bölünmüştür. Kaynak gösterirken tam numaraları standarttan kontrol edin.

Standart sürümü: EN 301 549 V4.1.1 (Eylül 2026), WCAG 2.2'yi esas alan ve EAA için hazırlanan ilk sürümdür. Henüz AB Resmî Gazetesi'nde atıf almamıştır; bu nedenle EAA gereksinimlerini karşılamanın gönüllü teknik yolu olarak görülmelidir. Atıf yapıldığında EAA ile ilgili uygunluk karinesi sağlayacaktır. 2.4.6 kriterinin metni WCAG 2.1 ve 2.2'de aynıdır. AA düzeyinde bir kriterdir.

EAA bağlamında dikkat: Yasanın Madde 2/4 hükmü bazı içerikleri gereksinimlerin dışında bırakır; örneğin 28 Haziran 2025'ten önce yayımlanmış ofis dosya biçimleri ve bu tarihten sonra güncellenmeyen arşivler. Bu tarihten sonra yayımladığınız ya da değiştirdiğiniz içerik bu istisnaların kapsamında değildir.

Directive (EU) 2019/882, EUR-Lex, İngilizce, yeni sekmede açılır

Web için kod örnekleri

1. Açıklayıcı başlıklar

Bir başlık kullanıcılara bölümün ne hakkında olduğunu söylemelidir.

Hatalı
<h2>Bölüm 1</h2>
<h2>Ayrıntılar</h2>
<h2>Daha fazla</h2>
Doğru
<h2>Teslimat seçenekleri</h2>
<h2>İade ve geri ödeme</h2>
<h2>Destek ekibiyle iletişime geçin</h2>

2. Açıklayıcı form etiketleri

Bir etiket ne girileceğini söylemelidir.

Hatalı
<label for="a1">Alan 1</label>
<input id="a1">
Doğru
<label for="soyad">Soyadı</label>
<input id="soyad" autocomplete="family-name">

3. Tekrarlanan alanlar için etiketler

Aynı alan birden çok kez göründüğünde etiket ya da grubu onları birbirinden ayırmalıdır.

Hatalı
<label for="s1">Sokak</label> <input id="s1">
<label for="s2">Sokak</label> <input id="s2">
Doğru
<fieldset>
  <legend>Fatura adresi</legend>
  <label for="fs">Sokak</label> <input id="fs">
</fieldset>
<fieldset>
  <legend>Teslimat adresi</legend>
  <label for="ts">Sokak</label> <input id="ts">
</fieldset>

4. Açıklayıcı düğme ve kontrol etiketleri

Bir düğme etiketi ne olacağını söylemelidir.

Hatalı
<button>Gönder</button>
<button>Tamam</button>
Doğru
<button>Mesajı gönder</button>
<button>Değişiklikleri kaydet</button>

5. Gerçek başlık olan başlıklar

Bir başlık başlık olarak işaretlenmeli ve bölümü anlatmalıdır. Başlık düzeylerini yalnızca biçimlendirme için kullanmayın.

Hatalı
<p class="buyuk-kalin">Çalışma saatleri</p>
Doğru
<h2>Çalışma saatleri</h2>

6. Simge etiketleri

Yalnızca simge, ancak anlamı yaygın olarak anlaşılıyorsa kabul edilebilir. Aksi hâlde metin ekleyin.

Hatalı
<button><svg>…</svg></button>
Doğru
<button><svg aria-hidden="true">…</svg> Favorilere ekle</button>

Mobil için kod örnekleri

Yerel uygulamalarda ekran başlıkları, bölüm üst bilgileri ve kontrol etiketleri aynı niteliğe ihtiyaç duyar ve etiketler yardımcı teknolojiye sunulmalıdır.

iOS (SwiftUI)

import SwiftUI

struct AdresFormu: View {
    @State private var sokak = ""

    var body: some View {
        Form {
            // Başlık olarak işaretlenmiş açıklayıcı bölüm üst bilgisi
            Section(header: Text("Teslimat adresi")) {
                // Kaçının: TextField("Alan 1", text: $sokak)
                TextField("Sokak ve kapı numarası", text: $sokak)
                    .textContentType(.streetAddressLine1)
            }
        }
    }
}

Android (Jetpack Compose)

import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.ui.Modifier
import androidx.compose.ui.semantics.heading
import androidx.compose.ui.semantics.semantics

@Composable
fun AdresFormu() {
    var sokak by remember { mutableStateOf("") }

    Text(
        "Teslimat adresi",
        style = MaterialTheme.typography.titleMedium,
        modifier = Modifier.semantics { heading() }
    )
    // Kaçının: label = { Text("Alan 1") }
    OutlinedTextField(
        value = sokak,
        onValueChange = { sokak = it },
        label = { Text("Sokak ve kapı numarası") }
    )
}

Nasıl test edilir?

  • Başlıkları listeleyin: Ekran okuyucuda bir başlık listesi ya da bir tarayıcı eklentisi kullanın. Her başlık bölümünü anlatıyor mu? Sayfayı yalnızca başlık listesinden anlayabilir misiniz?
  • Etiketleri okuyun: Her form alanını ve kontrolü gözden geçirin. Her etiket alanın ne için olduğunu söylüyor mu?
  • Genel ifadeleri arayın: Başlık ya da etiket olarak "Bölüm", "Ayrıntılar", "Daha fazla", "Alan", "Gönder" ve "Tamam" arayın.
  • Tekrarlanan alanları kontrol edin: Birden çok kez görünen alanların ayrı etiketleri ya da grup etiketleri var mı?
  • Simge etiketlerini kontrol edin: Her simgenin anlamı bağlamda açık mı, yoksa metni var mı?
  • Mobili kontrol edin: Ekran başlıkları, bölüm üst bilgileri ve kontrol etiketleri bir ekran okuyucu tarafından okunduğunda amaçlarını anlatıyor mu?
  • Denetleyiciyi başlangıç olarak kullanın: Otomatik araçlar eksik ve boş etiketleri ve başlıkları bulur, ama metnin açıklayıcı olup olmadığını yargılayamaz.

Sık yapılan hatalar

  • Genel başlıklar: "Bölüm 1", "Ayrıntılar" ve "Bilgi" hiçbir şey anlatmaz.
  • Genel düğme etiketleri: "Gönder" ve "Tamam" ne olacağını söylemez.
  • Tek etiket olarak yer tutucu: Kullanıcı yazınca kaybolur.
  • Yinelenen etiketler: Grup olmadan "Sokak" ya da "Ad" adlı birkaç alan.
  • Biçimlendirme için kullanılan başlıklar: Bir bölümü anlatmayan başlık.
  • Bağlantıya benzeyen belirsiz başlıklar: Başlık olarak "Daha fazlası için tıklayın".
  • Aşırı uzun etiketler: Bir etiket hızlı okunabilecek kadar kısa olmalıdır.
  • Alanla uyuşmayan etiketler: Bir e-posta alanında "Telefon" etiketi.

Kaynaklar

Standart sürümü: EN 301 549 V4.1.1 (2026-09), WCAG 2.2. Bu sayfa bilgilendirme amaçlıdır ve hukuki tavsiye niteliği taşımaz; bağlayıcı metin için Avrupa Erişilebilirlik Yasası'nın (Direktif (AB) 2019/882) ve EN 301 549 standardının resmî metinlerini esas alın.

Corpowid, Gartner tarafından tanınan bir platformdur.

Corpowid, dijital erişilebilirlik alanındaki yenilikçi yaklaşımı ve performansı nedeniyle dünyanın önde gelen araştırma ve danışmanlık şirketlerinden biri olan Gartner tarafından takdir edilmiştir. Bu rozetler, yapay zeka destekli ve kapsayıcı web deneyimleri oluşturma konusundaki kararlılığımızı yansıtmaktadır.

Corpowid hakkında sorularınız mı var?

Bizimle iletişime geçin.

Size en kısa sürede geri dönüş sağlayacağız.