HTML Academy · Ders

Klavye Gezinmesi ve Odak Sırası

Tüm işlevlere klavye üzerinden erişilebilmesini ve bunların mantıklı sırada olmasını sağlayın

4. ders / 413 adım

Klavye Gezinmesi ve Odak Sırası, CoddyKit'te ücretsiz bir HTML Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, HTML Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. HTML Academy kursu toplamda 4 dersten oluşur.

Klavye Gezinmesine Kimler İhtiyaç Duyar?

Birçok kullanıcı klavye gezinmesine güvenir:

  • Motor beceri kısıtlılıkları — fare kullanamazlar
  • İleri düzey kullanıcılar — klavye kısayollarını tercih ederler
  • Ekran okuyucu kullanıcıları — tamamen klavyeyle gezinirler
  • Anahtar erişimi kullanıcıları — tuş basışlarını taklit eden düğmeler kullanırlar

Doğal Olarak Odaklanabilen Öğeler

Bu HTML öğeleri varsayılan olarak klavyeyle odaklanabilir:

  • <a href> — Sekme tuşu öğeye gider, Enter etkinleştirir
  • <button> — Sekme tuşu öğeye gider, Enter/Boşluk etkinleştirir
  • <input>, <textarea>, <select> — Sekme tuşu bu öğelere gider
  • <details> / <summary> — Sekme + Enter

Sekme Sırası

Tarayıcı sekme sırasını şu şekilde belirler:

  • Varsayılan olarak DOM sırası — öğeler HTML'de göründükleri sırayla sekmeyle seçilir
  • Pozitif tabindex değerleri — bu öğeler artan sırayla önce sekmeyle seçilir
  • tabindex="0" — DOM konumunda doğal sekme sırasına eklenir
  • tabindex="-1" — sekme sırasında yer almaz; yalnızca betik aracılığıyla odaklanabilir

Doğal Sekme Sırası = DOM Sırası

HTML'nizin okuma sırası görsel düzenle eşleşmelidir:

<!-- GOOD: DOM order matches visual left-to-right, top-to-bottom: -->
<header>...</header>
<nav>...</nav>
<main>...</main>
<aside>...</aside>
<footer>...</footer>

<!-- BAD: visually reordered with CSS, DOM order broken:
     CSS flexbox order: doesn't affect tab order!
     Screen readers and keyboard users follow DOM order, not CSS order -->

Görünür Odak Göstergesi

WCAG 2.4.7 (AA Düzeyi): klavye odağı görünür olmalıdır:

/* NEVER do this: */
* { outline: none; }           /* removes all focus outlines */

/* GOOD: styled focus indicator: */
:focus-visible {
  outline: 2px solid #0070f3;
  outline-offset: 3px;
  border-radius: 4px;
}

/* :focus-visible shows outline for keyboard only
   mouse clicks don't trigger :focus-visible -->
/* But outline: none with :focus (not :focus-visible) hides for both */

Özel Odak Stilleri

Tasarım sisteminin odak stilleri:

/* Replace outline with box-shadow for rounded elements: */
button:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 112, 243, 0.4);
}

/* Always ensure 3:1 contrast ratio between
   focus indicator and background (WCAG 2.4.11 Level AA) */

Mantıksal Odak Sırası

Odak sırası mantıklı ve öngörülebilir olmalıdır — WCAG 2.4.3 (A Düzeyi):

<!-- BAD: focus order jumps around the page -->
<!-- First: footer link (tabindex=5) -->
<!-- Then: sidebar (tabindex=3) -->
<!-- Then: header nav (tabindex=1) -->

<!-- GOOD: natural DOM order matches reading flow: -->
<!-- Header → Nav → Main Content → Sidebar → Footer -->

Atlama Bağlantıları

Atlama bağlantıları, klavye kullanıcılarının tekrarlanan gezinmeyi atlamasını sağlar:

<a href="#main-content" class="skip-link">Skip to main content</a>

<!-- Visually hidden until focused: -->
.skip-link {
  position: absolute;
  top: -100%;
  left: 0;
  background: #0070f3;
  color: white;
  padding: 0.75rem;
  z-index: 9999;
}
.skip-link:focus {
  top: 0;  /* visible when focused -->
}

Modal Odak Tuzağı

Modallar açıkken odağı kendi içinde tutmalıdır:

<!-- When modal opens:
1. Move focus to modal container or first interactive element
2. Tab stays within modal
3. When modal closes, return focus to the trigger button
-->

const modal = document.getElementById('modal');
const trigger = document.getElementById('open-modal');

function openModal() {
  modal.removeAttribute('hidden');
  modal.querySelector('button, [tabindex="0"]').focus();
}

function closeModal() {
  modal.setAttribute('hidden', '');
  trigger.focus();
}

Klavye Kısayolları

Klavye kısayollarını olay dinleyicileriyle uygulayın:

document.addEventListener('keydown', (e) => {
  // Close modal on Escape:
  if (e.key === 'Escape') closeModal();

  // Navigate tabs with arrow keys:
  if (e.key === 'ArrowRight') focusNextTab();
  if (e.key === 'ArrowLeft') focusPrevTab();

  // Submit form on Enter (default behavior in inputs):
  // Nothing needed — browser handles this
});

Klavye Gezinmesini Sınama

Klavye erişilebilirliği nasıl sınanır:

  1. Farenizi bir kenara bırakın ve yalnızca klavyeyi kullanın
  2. Sekme tuşuna basın — her etkileşimli öğeye ulaşabiliyor musunuz?
  3. Odak göstergesi her zaman görünür mü?
  4. Sekme sırası mantıklı mı?
  5. Tüm özellikleri (formlar, modallar, açılır listeler) fare olmadan kullanabiliyor musunuz?
  6. Geriye doğru gezinmek için Shift+Tab tuşlarına basın

Hızlı Kontrol

Klavye erişilebilirliği için tüm öğelerden hiçbir zaman kaldırmamanız gereken CSS özelliği hangisidir?

Özet: Klavye Gezinmesi

Klavye erişilebilirliğinin temel kuralları:

  • Tüm etkileşimli öğelere Sekme tuşuyla ulaşılabilmelidir
  • DOM sırası = sekme sırası — görsel düzenle eşleştirin
  • Odak çerçevelerini hiçbir zaman kaldırmayın — özel stiller için :focus-visible kullanın
  • Atlama bağlantıları, tekrarlanan gezinmeyi atlamayı sağlar
  • Modallarda odak tuzağı kullanın; kapatıldığında odağı geri verin
  • Sitenizi yalnızca klavyeyle kullanarak sınayın
Başlamak ücretsiz

Yapay zeka eğitmeniyle HTML öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
40
Dersler
159

Sıkça Sorulan Sorular

“Klavye Gezinmesi ve Odak Sırası” dersi ücretsiz mi?

Evet — “Klavye Gezinmesi ve Odak Sırası” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve HTML Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. HTML Academy kursu toplamda 4 dersten oluşur.

“Klavye Gezinmesi ve Odak Sırası” dersinde ne öğreneceğim?

Tüm işlevlere klavye üzerinden erişilebilmesini ve bunların mantıklı sırada olmasını sağlayın HTML Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

HTML Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te HTML Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Klavye Gezinmesi ve Odak Sırası” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu HTML Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her HTML Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Erişilebilirlik Neden Önemlidir: WCAG Düzeyleri
  2. Ekran Okuyucular için Başlık Hiyerarşisi
  3. Görsel Alt Metni: Ne Zaman ve Nasıl
  4. Klavye Gezinmesi ve Odak Sırası
← HTML Academy Sayfasına Dön