web-gelistirme-sc.com

Metin alanları üzerindeki karakter sınırları - artıları ve eksileri ve en iyi uygulamalar?

Form alanlarımızdan bazılarının karakter sınırları vardır. Mevcut veri girişi boyutunu yansıtmamız mı yoksa veri girişini bu boyutun ötesinde zorla sınırlandırmamız ve engellememiz mi tartışıyoruz.

HTML'de, basit <input> Öğelerinde daha fazla girişi engelleyen maxlength özniteliği olabilir, ancak <textarea> Yerleşik bir seçeneğe sahip değildir. <textarea> İçindeki karakter sınırları javascript ile kolayca uygulanabilir.

Twitter kalan kullanılabilir karakterleri gösterir ve karakterden daha fazlasını yazmanıza izin verir, ancak bir hata olarak gösterir (ve eylem düğmesini devre dışı bırakır).

Twitter limit remainingTwitter limit exceeded

Proaktif olarak sınırlı bir alan için izin verilen karakter sayısını ve kalan karakter sayısını gösteriyoruz. Kullanıcı sınırı aşarsa, bir satır içi form geçersizleştirme mesajı görüntülenir.

limit shown, characters remainingfield limit exceeded

Karşı argüman, kullanıcıların küçük sayıların güncellendiğini bile fark etmediği ve kullanıcının daha sonra kırpması gereken bir şey yazmak için çok fazla çaba harcayabileceğidir.

Bu karakter sayaçlarını kullanmanın avantaj ve dezavantajları nelerdir?

50
Erics
  • Metin olmadığında, mesajı maksimum karakter sayısını (kalan sayıdan bahsetmeden) ayırın.

  • Siz yazarken, kalan karakterlerin sayısı griden siyaha kaybolur (çok ince bir gösterge)

  • Sınıra ulaştığınızda, sınırı kırmızıya değiştirin; fazla metni farklı bir renk haline getirme; aşağıda küçük bir hata simgesi göster ve fazla karakter sayısını göster - şimdi kırmızı renkte. Çok fazla 'şok' olmamak için kızarıklığın birkaç saniye içinde kaybolmasını sağlayabilirsiniz.

Fazla metnin renklendirilmesi kullanıcının fazlalığın ne kadar olduğunu görmesini sağlar . Metnimin ne kadarının aslında fazla miktarda olduğunu tahmin etmek zorunda kaldığımı rahatsız edici buluyorum ve açıkça işaretlenmiş olması güzel.

Ancak, girilebilecek gerçek karakter sayısını asla maksimum olarak gösterdiğiniz gerçek sınıra sınırlamayın - bu bir felaket alanıdır. Söylemek istediğiniz şeyin akışını bitirmek ve sonra düzenlemek her zaman iyidir.

Renklendirilmiş metin düzenleme işlemi sırasında harikadır, çünkü geri bildirimler sayıya bakmak yerine bağlamdadır. Sınırın altına düştüğünde - tüm kırmızı bitleri çıkarın.

enter image description here


Jon W Digsby - sadece kontrol etmek için indirdi - ve burada Digsby'deki Twitter uygulamasının ekran görüntüsünü, aşırı metnin arka planını kırmızıya ve metni beyaza dönüştüren bir ekran görüntüsü. Gözde bir bit sert, ancak metin biçiminin değişmesi ile aynı temel ilke.

enter image description here

36
Roger Attrill

Her zamanki gibi, birisini karakter sınırından haberdar etmek ve birisini ihtiyaç duyduklarından daha fazla bilgi ile rahatsız etmek arasında bir değiş tokuş.

Bence çözüm gerektiğinde bilgiyi daha açık hale getirmek, ama ihtiyaç olmadığında daha incelikli. Bunu yapmanın birkaç yolu vardır, ancak deneyeceğim alanın arka planını değiştirmek ve yalnızca o zaman hata mesajını göstermek olacaktır. İnsanlar çok ince olmadıklarında değişiklikleri fark ederler.

enter image description here

Ancak insanları yalnızca 200 karakterle yazmayla sınırlamayın (sınır buysa). Yazımın daha fazla olmasına izin verin ve çok fazla ise aşağı düzenleyin.

8
JohnGB

Dikkate alınması gereken bir şey, eğer çok fazla içeriğin girileceği bir alansa (yani 140 karakterden fazla), kullanıcının içeriği başka bir yerde yaratmış olması ve bu alana yapıştırmak istemesi olabilir. Bunu yapmalarını engellemeyin; içeriğe yapıştırmalarına izin verin ve ardından bunları boyuta göre düzenleme seçeneği verin.

İçerik alanı metninin style değerini, yalnızca sınır ihlal edildikten sonra kırmızıya dönüşmek yerine, sınıra yaklaştıkça rengi/kontrastı değiştirecek şekilde değiştirmeyi düşünebilirsiniz. Bu şekilde kullanıcıya limitlerine yaklaştığına dair bir uyarı verilir.

3
JonW

En iyi cevap mükemmel, ama bunun için alternatif bir fikir paylaşacağımı düşündüm. Bunu destekleyecek herhangi bir araştırma veya veri olmadığından, başkalarının bunun kullanılabilir/iyi bir fikir olup olmadığını bilmek isterim:

Illustration of colored bar method

Sağda veya altta, "ilerleme çubuğu" gibi renkli bir çubuk, ne kadar göreli metin girildiğini gösterir. Bir noktaya kadar yeşil, sonra sınıra yakın olduğunda sarıya, sınıra ulaşıldığında kırmızıya döner. Kullanıcı arayüzü bip sesi çıkarır (ancak sınıra her ulaşıldığında yalnızca bir kez). Araç ipucu, karakter sınırının aşıldığını göstermek için değişir ve standart "hata dalgası" (yazım denetimi dalgasından farklı renk) hangi karakterlerin sınırı aştığını tanımlar.

Bunun daha "ortam" olduğunu ve ekran gayrimenkulünü veya kullanıcıların ayrı bir etiket kadar dikkatini çekmediğini hissediyorum.

2
J. Dimeo