GH GambleHub

Kontrast arayüzleri ve okunabilirlik

1) Neden kontrast

Kontrast, kullanıcının metni, simgeleri ve durumları ne kadar hızlı ve doğru bir şekilde tanıdığını belirler. Yüksek kontrast:
  • Bilişsel yükü ve yorgunluğu azaltır,
  • arayüz tarama hızını artırır,
  • Görme ve renk bozukluğu olan kişiler için erişilebilirliği artırır,
  • Birbiriyle ilişkili senaryolardaki hataları azaltır (ödemeler, formlar, onaylar).

2) Temel kavramlar ve formüller

2. 1 WCAG ile kontrast

Kontrast, ön plan ve arka plan parlaklığının oranıdır:
  • Kontrast = (L1 + 0. 05 )/( L2 + 0. 05), burada 'L1 ≥ L2', 'L' göreceli parlaklıktır (0.. 1).

2. 2 Göreceli parlaklık (sRGB)

1. R, G, B bileşenlerini 0 aralığında getirin.. 1.

2. sRGB doğrusallaştırma:
  • Eğer'c ≤ 0. 04045 ', sonra'c _ lin = c/12. 92`
  • Aksi takdirde'c _ lin = ((c + 0. 055) / 1. 055) ^ 2. 4`

3. Parlaklık: 'L = 0. 2126 R_lin + 0. 7152 G_lin + 0. 0722 B_lin'

2. 3 Renk temsilleri

HSL/HSV - manuel ayarlama için uygundur, ancak algısal olarak düzgün değildir.
Lab/LCH/OKLCH - insan algısına daha yakın; OKLCH, okunabilirliği korurken, hafiflik/doygunluğun sistematik olarak değiştirilmesi için uygundur.

3) Normlar ve hedefler (WCAG 2. 2)

Metin ≥ 14 pt kalın veya ≥ 18 pt (normal): kontrast en az 3:1 (AA).
Metnin geri kalanı: kontrast en az 4. 5:1 (AA).
AAA (okunabilirlik artışı): Düz metin için 7:1; 4. Büyük bir tane için 5-1.
İkonografi ve önemli fotoğrafik olmayan öğeler (giriş alanlarının sınırları, onay kutuları, anahtarlar, hata göstergeleri): Arka plan ile 3:1 dönüm noktası.
Durumlar (hover/focus/pressed/disabled), durumlar arasında veya bir arka plan ile en az 3:1 ayırt edilebilir, ayrıca açık fotoğrafik olmayan göstergeler (bağlantı altı, gölgeler/çerçeveler, kalınlık değişimi) olmalıdır.

4) Tasarım sistemi: kontrast belirteçleri

Tasarım sisteminin kontrastı belirteçlerin bir özelliği olarak kaydetmesini öneririz.

Seviye örnekleri:
  • 'fg/birincil' ↔ 'bg/baz' ≥ 7:1 (kritik metin için AAA)
  • 'fg/secondary' ↔ 'bg/base' ≥ 4. 5:1
  • 'fg/sessiz' ↔ 'bg/ince' ≥ 3:1 (servis metni)
  • 'border/default' ↔ 'bg/base' ≥ 3:1 (alanların sınırları, kartlar)
  • 'Interactive/default' ↔ 'bg/base' ≥ 4. 5:1 (bağlantılar/düğmeler)
  • 'Interactive/disabled' etkin durumları taklit etmemelidir; Kontrast azaltma ve imleç/ARIA niteliklerini kullanın.
İpucu: Tokenları OKLCH'de saklayın:
  • Temanın temel hafifliği (L), daha sonra katmanlar/yüzeyler için 'Δ L' sapmaları ('bg/ince', 'bg/yükseltilmiş'),
  • Testlerde minimum kontrast çiftlerini sabitleyin.

5) Işık ve karanlık temalar

Işık teması: Metin neredeyse siyahtır (saf bir # 000 değil, sıcak/soğuk bir gölge), arka plan "ışıltıyı" azaltmak için beyazdan hafif renklidir.
Karanlık tema: temiz # 000 arka plandan kaçının - L≈0 ile derin grafit/kömür. 12–0. 16 parlamayı azaltır; L≈0 için beyaz metni yumuşatın. 9.
Her iki temada da aynı zıt hedefleri tutmak; Renk aksanlarının koyu bir arka planda okunabilirliğini kaybetmesine izin vermeyin (genellikle 'Δ L' kayması ve doygunlukta bir azalma gerekir).

6) Resimlerde ve videolarda metin

Metin altında kaplamalar (degrade/yarı saydam katman %40-60) veya kalıplar kullanın.
En az 4 tane yapın. Metin ve kalıbın yerel arka planı arasında 5:1.
Dinamik video için - çerçevenin parlaklığını analiz ederek (merkezi/arka plan alanını örnekleyerek) uyarlanabilir arka plan/kaplama.

7) Durumlar ve etkileşim

Referanslar yalnızca renkle ayırt edilmemelidir: varsayılan vurgulu/odaklama + kontrastlı ≥ 3:1 ile düz metin.
Düğmeler: metin ve simge ≥ 4. 5:1 doldurmak için; 3:1 ≥ çevreye doldurun.
Hatalar/başarı/uyarılar: renge güvenmeyin; Simgeler/metin istemleri ekleyin; En az 4 metin kontrastı sağlayın. 5:1.

8) Renk bozukluğu olan kişiler

Modlarda ayırt edilebilirliği koruyun:
  • Deuteranopia/Protanopia (kırmızı-yeşil bölge): Ek işaretler olmadan "kırmızı ve yeşil" kombinasyonlardan kaçının.
  • Tritanopi: Ayrı ayrı kontrol etmek için mavi-sarı çiftler.
  • Şekilleri ve grafikleri net hale getirin: metin etiketleri, farklı konturlar/işaretleyiciler, dolgu desenleri, parça başlıkları.

9) Tipografi ve arka plan

Gövde boyutu: 14-16 px minimum (web), içerik bölgeleri için 16-18 px.
Satır aralığı 1. 4–1. 6, yüksek kontrastlı bir arka plana karşı okunabilirliği geliştirir.
Yetersiz kontrastta ince stillerden kaçının.
Renkli arka planlardaki metin: Hedef orana ulaşmak için arka plan doygunluğunu azaltın ve/veya açıklığı artırın.

10) Grafikler, tablolar, grafikler

Çizgiler/sütunlar ≥ 3:1'den ızgaraya/arka plana.
Eksen etiketleri ve efsaneler ≥ 4. 5:1.
Rengin ötesinde ayırt edilebilir şekiller/desenler kullanın.

11) Dinamik/adaptif kontrast

Otomatik kontrast: seçilen dolguya metnin kontrast rengini hesaplayın (örn. VIA OKLCH: 'L'ile eşleşerek 4'e ulaşın. 5:1).
Sistem ayarları: 'prefers-contrast', 'forced-colors', yüksek kontrastlı OS modlarına saygı gösterin.
Kişiselleştirme: Uygulamada "Yüksek kontrast" ayarı ('Δ L'nin güçlendirilmesi, marka aksanlarının form/simgeler aracılığıyla marka kimliğini korurken daha nötr olanlarla değiştirilmesi).

12) Kontrol süreçleri ve otomasyon

12. 1 Tasarımcılar için

Düzenlerde kontrastı kontrol edin (hem temalarda hem de anahtar arka planlarda).
Bileşenlere "kontrast yuvalarını" girin (başlık/birincil/ikincil/ipucu).
Her bileşen için belge geçerli arka plan bağlamları.

12. 2 Geliştiriciler için

Birim yardımcıları: Kontrast hesaplama işlevi ve belirteç çiftleri için testlerde iddia eder.
Kontrast metrikleri denetleyen görsel anlık görüntüler (ekran oluşturma + örnek L1/L2 hesaplama).
Stil gömlekleri: "Ham" rengin yasaklanması, yalnızca belirteçler aracılığıyla.

12. 3 V CI/CD

Temalar ve durumlardaki tüm 'fg/bg' çiftlerini denetler.
Bileşen, değişken, tema ve gerçek değeri olan ihlal raporu (örn. 3. 9:1 gerekli 4 ile. 5:1).

13) iGaming özellikleri (isteğe bağlı)

Parlak promosyon afişleri ve turnuva kartları genellikle metni yiyor. Plaka/kaplama ve arka plan doygunluk sınırlaması gereklidir.
Kritik bildirimlerin sistem unsurları (18 +, limitler, riskler) - aksine AAA.
Skor tablolarında/katsayılarda: sayılar ve işaretler "+/-" ≥ 4. 5:1, galibiyeti vurgulamak - sadece renkli değil (simgeler/etiketler).

14) Antipatterns

Durumu ayırt etmek için sadece renge güvenin.
Kontrastı hesaplamadan renkli bir arka plan üzerinde ince gri yazı tipleri.
Dark Mode'da "Dark on Dark", promosyon alanlarında "Bright on Bright".
Arka plandaki metin, detaylar/gürültü olmadan ölür.

15) İnceleme kontrol listesi

Temel metin

  • ≥ 4. 5:1 (normal), ≥ 3:1 (büyük/yağlı).

Bağlar/Düğmeler

  • Düğme metni ≥ 4. 5:1 doldurmak için.
  • Ayırt edilebilir 3:1 ≥ durumlar veya açık göstergeler.

Simgeler/Kenarlıklar

  • ≥ 3:1 arka plana.

Karanlık/Açık Temalar

  • Aynı kontrast hedeflerine ulaşılır.

Medya arka planları

  • Kaplama/plaka, katsayı korunur.

Kullanılabilirlik

  • Renk dışında fotoğrafik olmayan özellikler de vardır.

Otomasyon

  • CI/CD'de belirteçler ve bileşenler üzerinde kontrast testleri.

16) Belirteç enjeksiyonu (gösterim örneği)


color.bg.base   = oklch(0.95 0.02 260)
color.fg.primary  = oklch(0.18 0.04 260)  # ≈7:1 color.fg.secondary = oklch(0.30 0.03 260)  # ≥4.5:1 color.border    = oklch(0.40 0.03 260)  # ≥3:1 color.accent    = oklch(0.65 0.12 230)  # проверить на обоих фонах

Not: yaklaşık değerler; Son olanlar, belirli bir konudaki kontrast hesaplanarak seçilir.

17) Takım belgeleri

Yönergelerde şunları belirtin: kontrast hedefleri, true/false çiftleri örnekleri, temel bileşenler için 'fg × bg' matrisi, ortam arka planları için kurallar ve Yüksek Kontrast modunun nasıl etkinleştirileceği.
İstisnalar ve Nedenler sayfasını canlı tutun (örneğin, izin verilen 3. Büyük bir ekran başlığının dar durumunda 8:1).


Kısa özet

Kontrast ölçülen bir parametredir, tat parametresi değildir. Hedefler belirleyin (AA/AAA), bunları belirteçlerle yönetin (tercihen OKLCH'de), otomatik olarak CI'da ve görsel olarak düzenlerde kontrol edin, koyu/açık temaları ve renk görme bozukluğu olan kişileri dikkate alın. Bu, okunabilirliği garanti eder, hataları azaltır ve dönüşümü artırır.

Contact

Bizimle iletişime geçin

Her türlü soru veya destek için bize ulaşın.Size yardımcı olmaya her zaman hazırız!

Entegrasyona başla

Email — zorunlu. Telegram veya WhatsApp — isteğe bağlı.

Adınız zorunlu değil
Email zorunlu değil
Konu zorunlu değil
Mesaj zorunlu değil
Telegram zorunlu değil
@
Telegram belirtirseniz, Email’e ek olarak oradan da yanıt veririz.
WhatsApp zorunlu değil
Format: +ülke kodu ve numara (örneğin, +90XXXXXXXXX).

Butona tıklayarak veri işlemenize onay vermiş olursunuz.