- Web arayüzlerinde
<div> yerine <button> kullanmak, erişilebilirlik ve işlevsellik açısından doğru tercihtir
<div>, ekran okuyucular tarafından etkileşimli bir öğe olarak algılanmaz ve klavye odağına ya da Enter, Spacebar girişlerine tepki vermez
[role="button"] veya [tabindex="0"] öznitelikleri eklense bile odak sırası hataları ve klavye olayı işleme sorunları devam eder
- Bu sorunları çözmek için birden fazla event listener ve koşul eklemek gereksiz karmaşıklık yaratır
<button>, erişilebilirlik, odak ve klavye girdisi işleme özelliklerini varsayılan olarak sunar; bu yüzden basit ve standart çözümdür
Yanlış yaklaşım: <div> ile düğme yapmak
- React veya HTMX kullananlar arasında
<div onclick="..."> biçiminde modal açma gibi etkileşimleri gerçekleştirme örnekleri yaygındır
- Bu yaklaşımın sorunları
- Ekran okuyucular ilgili öğeyi etkileşimli bir öğe olarak algılamaz
- Klavyeyle odağa geçilemez
- Yalnızca
click olayı çalışır; Enter veya Spacebar girişlerine tepki vermez
Erişilebilirlik “düzeltme” girişimlerinin sınırları
<button> öğesinin sunduğu varsayılan işlevler
Sonuç: en iyisi sadelik
<button>, erişilebilirlik standartlarını karşılarken kod miktarını azaltmanın en basit yoludur
- Gereksiz olay işleme veya öznitelik eklemeleri olmadan standart HTML öğeleri kullanmak, bakım kolaylığı ve verimlilik açısından avantaj sağlar
- “Tembel geliştiriciler doğru öğeyi kullanmalı” mesajıyla,
gereksiz karmaşıklıktan kaçınan ve varsayılan işlevlerden yararlanan geliştirme alışkanlıklarının önemi vurgulanır
Henüz yorum yok.