Cep telefonu için otomatik olarak büyük harf kullan

Bu, mevcut en etkileyici olmayan özellik gibi görünebilir ancak herkes mobil cihazda yazmak istemediği için önemli olduğunu düşünüyorum. Siz de nefret ediyorsunuz, ben de. Android için Chrome'da (Chrome 43'ten önce - Nisan 2015 itibarıyla Beta) geliştiricinin, tarayıcının kullanıcının metin girmesine nasıl yardımcı olabileceği üzerinde çok az kontrolü vardır. Şu anda bir cihazda yazıyorsanız bu durum şöyle görünebilir:

Android'in ad olarak tanıdığı bazı değerler dışında her şeyin küçük harfli olduğuna dikkat edin.

Apple, HTMLInputElement ve HTMLTextAreaElement için iOS 5'te autocapitalize adlı bir özellik kullanıma sundu. Bu özellik, sayfa yazarının, kullanıcının metin girişini optimize etmesi için tarayıcıda sanal klavyenin nasıl sunulacağına dair ipucu vermesine olanak tanır. En basit haliyle, bir metin kutusunun her yeni cümlenin ilk harfini otomatik olarak büyük harf yapmasını belirtebilirsiniz.

Chrome 43'ten itibaren Chrome, hem HTMLInputElement hem de HTMLTextAreaElement'te autocapitalize özelliğini destekleyecek. Bu sayede, sanal klavyenin otomatik büyük harf kullanma davranışını kontrol edebilir ve iOS'teki Safari ile uyumlu hale getirebilirsiniz.

autocapitalize yalnızca type özelliği type="text", type="search", type="url", type="tel", type="email" veya type="password" olarak ayarlanmış HTMLInputElement'ler için geçerli olur. Varsayılan ayar, büyük harfleri otomatik olarak büyütmemektir.

Aşağıda, metin alanındaki cümleleri otomatik olarak büyük harfe dönüştürmenize olanak tanıyan basit bir örnek verilmiştir:

<textarea autocapitalize="sentences">

Otomatik büyük harf kullanma özelliği hangi değerleri alabilir?

Aşağıdaki tabloda, bir giriş öğesinin bulunabileceği farklı durumlar gösterilmektedir:

Eyalet Anahtar kelimeler
<input>
<input autocapitalize=off>
Büyük harf kullanımı yok none [varsayılan]
kapalı
<input autocapitalize=characters> Karakterlerin Büyük Harf Kullanımı karakterler
<input autocapitalize=words> Kelimelerin büyük harf kullanımı words
<input autocapitalize=sentences> Cümlelerde büyük harf kullanımı cümleler

HTMLInputElement için, öğenin türü type=text veya type=search ise varsayılan geçersiz değer Cümleleri Büyük Harfle Başlatma'dır. Aksi takdirde Büyük Harfle Başlatmama olur.

  • <input autocapitalize="simon">, Cümlelerde Büyük Harf özelliğine sahip bir metin alanı olur.
  • <input type="email" autocapitalize="simon">, Büyük harf kullanımı yok seçeneğiyle bir metin alanıdır.
  • <input>, Büyük harf kullanımı yok seçeneğiyle bir metin alanıdır.

HTMLTextAreaElement için varsayılan geçersiz değer Cümlelerin Baş Harfleri'dir. Bu, varsayılan davranıştan farklıdır.

  • <textarea autocapitalize="terry"></textarea>, Cümle Büyük Harfle Başlamalı seçeneğini içeren bir metin alanı olur.
  • <textarea></textarea>, cümle baş harfi içeren bir metin alanı olur.
  • <textarea autocapitalize="none"></textarea>, Büyük harf kullanımı yok seçeneğiyle bir metin alanı olur.

HTMLFormElement özelliğinin günümüzde sayfalarda nadiren kullanıldığını ve kullanıldığında da çoğunlukla formdaki otomatik büyük harf kullanımını tamamen devre dışı bırakmak için kullanıldığını tespit ettiğimiz için bu özelliği uygulamamaya karar verdik:

<form autocapitalize=off><input></form>

HTMLInputElement için varsayılan durum Büyük Harf Yok olduğundan yukarıdaki durum tuhaftır.

inputmode yerine neden bunu kullanıyorsunuz?

inputmode, diğerlerinin yanı sıra aynı türde sorunları çözmek için tasarlanmıştır. Ancak tarayıcı uygulamalarında eksiklik var. Bildiğimiz kadarıyla yalnızca Firefox OS'te bir uygulama var ve ön ek (x-inputmode) kullanılıyor. Ayrıca web'de çok az kullanılıyor. Öte yandan autocapitalize, yüz binlerce web sitesindeki milyonlarca sayfada zaten kullanılıyor.

Bunu ne zaman kullanmalıyım?

Bu, autocapitalize öğesini ne zaman kullanmanız gerektiğine dair kapsamlı bir liste değildir. Bununla birlikte, kullanıcının metin girmesine yardımcı olmanın çok faydalı olduğu bazı yerler vardır:

    • autocapitalization=words
    • Kullanıcı adlarının büyük harflerle yazılmasını bekleme (Not: Tüm adlar bu kurala uymaz ancak Batı dillerindeki adların çoğu beklendiği gibi büyük harflerle yazılır.)
    • Şirket adları
    • Adresler
  • Aşağıdakileri bekliyorsanız autocapitalization=characters kullanın:
    • ABD eyaletleri
    • Birleşik Krallık posta kodları
  • Normal paragraf biçiminde girilen içerik (ör. blog yayını) bekliyorsanız giriş öğeleri için sentences değerini kullanın.
  • Etkilenmemesi gereken içerikler (ör. kod girme) bekliyorsanız TextArea'larda none kullanın.
  • İpucu almak istemiyorsanız otomatik büyük harf kullanma özelliğini eklemeyin.