ToolHub
View All Posts

Koyu Mod Web Tasarımı: En İyi Uygulamalar ve Uygulama Rehberi

Koyu mod, geliştirici tercihinden ana akım tasarım beklentisine dönüştü. Geliştiricilerin %80'inden fazlası IDE'lerinde koyu mod kullanıyor ve büyük işletim sistemleri artık sistem düzeyinde koyu tema içeriyor. Kullanıcılar, web sitelerinin ve uygulamaların tercihlerine saygı duymasını bekliyor. Bu rehber, etkili bir koyu mod deneyimi oluşturmak için gereken tasarım ilkelerini, renk teorisini, CSS uygulamasını ve erişilebilirlik hususlarını kapsar.

Koyu Mod Neden Önemlidir

Koyu mod yalnızca estetik bir seçim değildir. Kullanıcılara somut faydalar sağlar. Düşük ışıklı ortamlarda, koyu arka planlar ekranın yaydığı ışık miktarını azaltarak göz yorgunluğunu azaltır. OLED ve AMOLED ekranlar için, koyu pikseller açık piksellerden çok daha az güç tüketir ve mobil cihazların pil ömrünü uzatır. Koyu mod ayrıca kontrast yoluyla görsel hiyerarşi oluşturarak dikkati içeriğe ve etkileşimli öğelere çeker.

Ancak, yanlış uygulanan koyu mod, hiç olmamasından daha kötü olabilir. Saf beyaz metin ile saf siyah arka plan arasındaki yüksek kontrast, metnin bulanık veya parlıyormuş gibi göründüğü halo efektine neden olabilir. Anahtar, kontrast ve konfor arasında doğru dengeyi bulmaktır.

Koyu Mod Renk Teorisi

Koyu mod tasarımındaki en yaygın hata, açık renk şemasını basitçe tersine çevirmektir. Bu yaklaşım başarısız olur çünkü renk algısı koyu arka planda değişir. Beyaz üzerinde canlı görünen renkler, koyu yüzeylerde rahatsız edici veya ezici görünebilir ve açık gölgelerdeki ince farklılıklar koyu zeminde görünmez hale gelir.

Arka Plan Rengi

Arka plan olarak saf siyah (#000000) kullanmaktan kaçının. Saf siyah, beyaz metinle aşırı kontrast oluşturarak göz yorgunluğuna neden olur. Bunun yerine, derinlik ve görsel ilgi katan hafif bir renk tonuna sahip koyu gri kullanın.

Arka Plan KatmanıRenkKullanım Durumu
Temel#0f172aSayfa arka planı
Yüzey#1e293bKartlar, modeller
Yükseltilmiş#334155Hover durumu, açılır menüler
Katmanrgba(0,0,0,0.5)Model arka planı

Metin Rengi

Benzer şekilde, gövde metni için saf beyaz (#ffffff) kullanmaktan kaçının. Parlamayı azaltırken okunabilirliği koruyan kırık beyaz tonları kullanın. Saf beyazı başlıklar ve vurgu için saklayın.

Vurgu Rengi

Vurgu renkleri genellikle koyu mod için ayarlanmalıdır. Beyaz arka planda iyi çalışan doygun renkler, koyu yüzeylerde titreşiyormuş gibi görünebilir. Görsel yorgunluğa neden olmadan görünürlüğü korumak için vurgu renklerinin doygunluğunu hafifçe azaltın ve parlaklığını artırın.

CSS Uygulaması

En sürdürülebilir koyu mod yaklaşımı, prefers-color-scheme medya sorgusu ile CSS özel özelliklerini (değişkenler) kullanmaktır. Bu, renkleri bir kez tanımlamanıza ve değişken değerlerini değiştirerek temalar arasında geçiş yapmanıza olanak tanır.

CSS Özel Özelliklerini Kullanma

:root {
  --bg: #f8fafc;
  --bg-card: #ffffff;
  --text: #1e293b;
  --text-muted: #64748b;
  --primary: #3b82f6;
  --border: #e2e8f0;
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0f172a;
    --bg-card: #1e293b;
    --text: #e2e8f0;
    --text-muted: #94a3b8;
    --primary: #60a5fa;
    --border: #334155;
  }
}

body {
  background: var(--bg);
  color: var(--text);
}

JavaScript ile Manuel Geçiş

prefers-color-scheme sistem tercihini ele alırken, kullanıcıların manuel geçişe de ihtiyacı vardır. Tercihi localStorage'da saklayın ve kök öğede bir data özelliği ile uygulayın.

function toggleTheme() {
  const current = document.documentElement.dataset.theme;
  const next = current === 'dark' ? 'light' : 'dark';
  document.documentElement.dataset.theme = next;
  localStorage.setItem('theme', next);
}

// On page load
const saved = localStorage.getItem('theme');
if (saved) {
  document.documentElement.dataset.theme = saved;
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
  document.documentElement.dataset.theme = 'dark';
}

Ardından CSS'te, medya sorgusu yaklaşımıyla birlikte özellik seçiciyi kullanın:

[data-theme="dark"] {
  --bg: #0f172a;
  --bg-card: #1e293b;
  --text: #e2e8f0;
}

Katman ve Derinlik Yönetimi

Açık modda, gölgeler katmanı iletir. Koyu modda, gölgeler koyu yüzeylerde daha az görünür. Bunun yerine, katmanı temsil etmek için giderek açılan arka plan renkleri kullanın. Her katman, bir altındakinden biraz daha açık olmalı ve ışığın yükseltilmiş yüzeylere düşmesini taklit eden görsel bir hiyerarşi oluşturmalıdır.

Koyu Modda Görseller ve Medya

Parlak görseller, koyu arka planda rahatsız edici görünebilir. Koyu modda görsellerin parlaklığını hafifçe azaltmak için CSS filtresi kullanın. Logo ve simgeler için açık renkli alternatif sürümler sağlayın.

[data-theme="dark"] img {
  filter: brightness(0.9);
}

[data-theme="dark"] .logo-dark {
  display: inline-block;
}

[data-theme="dark"] .logo-light {
  display: none;
}

Erişilebilirlik Hususları

Koyu mod, açık mod ile aynı erişilebilirlik standartlarını karşılamalıdır. WCAG 2.1 yönergeleri, normal metin için minimum 4.5:1 ve büyük metin için 3:1 kontrast gerektirir. Uyumluluğu sağlamak için koyu temanızı kontrast denetleme araçlarıyla test edin.

Yaygın Koyu Mod Hataları

Koyu mod tasarımınızın kontrastını kontrol etmeniz mi gerekiyor? Renklerinizin WCAG erişilebilirlik standartlarını karşıladığından emin olmak için ücretsiz kontrast denetleme aracımızı deneyin.

Kontrastı Şimdi Kontrol Et

Sıkça Sorulan Sorular

Koyu mod arka planı için saf siyah kullanmalı mıyım?

Hayır, saf siyah (#000000) beyaz metinle çok fazla kontrast oluşturarak göz yorgunluğuna ve halo efektine neden olur. Bunun yerine #121212, #1e293b veya #0f172a gibi koyu griler kullanın. Bu renkler, okunabilirlik için yeterli kontrast sağlarken gözler için daha rahattır.

CSS'te kullanıcının koyu mod tercihini nasıl algılarım?

prefers-color-scheme medya sorgusunu kullanın: @media (prefers-color-scheme: dark) { /* koyu mod stilleri */ }. Bu, kullanıcı işletim sistemi ayarlarında koyu modu etkinleştirdiğinde otomatik olarak koyu stiller uygular.

Koyu mod metni ne kadar kontrasta sahip olmalıdır?

WCAG 2.1, normal metin için minimum 4.5:1 ve büyük metin için 3:1 kontrast gerektirir. Koyu modda, parlamayı azaltırken yeterli kontrastı korumak için saf beyaz yerine koyu arka planla açık gri metin (#e2e8f0 veya #f1f5f9) kullanın.

Koyu mod varsayılan seçenek olmalı mı?

Kullanıcının sistem tercihini takip etmek için prefers-color-scheme kullanın. Tercih algılanmazsa, daha geniş uyumluluğa sahip olduğu ve çoğu kullanıcının gündüz kullanımında açık modu tercih ettiği için açık mod daha güvenli bir varsayılandır. Kullanıcıların manuel olarak geçiş yapabilmesi için her zaman bir geçiş düğmesi sağlayın.

Koyu modda görseller nasıl işlenir?

Koyu modda, görsellerin koyu arka planda aşırı parlak görünmesini önlemek için CSS filter: brightness(0.9) kullanarak parlaklıklarını hafifçe azaltın. Logo ve simgeler için açık renkli sürümler sağlayın. Dekoratif görseller için opaklık ayarlaması yapmayı düşünün.