Menu

HTML Input Türleri: input Etiketinin 22 Türünün Tamamı

HTML <input> etiketinin tüm türleri tek yerde: text, email, password, number, range, date ve time, color, file, hidden ve diğerleri; her birinin neyi doğruladığı, telefonlarda hangi klavyeyi açtığı ve ortak özellikleri.

Bu sayfada çalıştırılabilir editörler var - düzenle, çalıştır ve sonucu anında gör.

input etiketi ve türleri

<input> bir form alanıdır ve hangi türde olacağına type özelliği karar verir. Aynı etiket bir metin kutusu, bir kaydırıcı, bir tarih seçici ya da bir renk seçici yapar. Aşağıdaki her alanı dene ve formun ne gönderdiğini görmek için Submit'e bas:

<input> boş bir elementtir, bu yüzden kapanış etiketi yoktur. name değeri, değerin gönderildiği anahtardır; value ise başlangıç değeridir. Eksik ya da yanlış yazılmış bir type düz bir metin alanı verir.

Tüm HTML input türleri

typeNe olduğuNotlar
textTek satır metinVarsayılan
passwordNokta olarak gösterilen metinKendi başına şifrelenmez; HTTPS üzerinden gönder
emailBir e-posta adresiBiçimi doğrular; telefon klavyelerinde @ tuşu
urlBir web adresihttps:// gibi bir şemayla başlamalı
telBir telefon numarasıMobilde telefon tuş takımı, biçim kontrolü yok
searchBir arama kutusuÇoğunlukla bir temizle butonu gösterir
numberBir sayıArtırma azaltma butonları, min, max, step
rangeBir kaydırıcıTasarım gereği hassas değildir; değer bir sayıdır
dateBir tarihDeğer YYYY-MM-DD
timeGünün bir saatiDeğer HH:MM (24 saat)
datetime-localTarih ve saat, saat dilimi yokDeğer YYYY-MM-DDTHH:MM
monthBir yıl ve ayHer tarayıcıda desteklenmez
weekBir yıl ve hafta numarasıHer tarayıcıda desteklenmez
colorBir renk seçiciDeğer küçük harfle #rrggbb
checkboxAçılıp kapanan bir kutuBkz. HTML checkbox
radioBir gruptan tek seçimBkz. HTML radio buton
fileBir dosya seçiciaccept, multiple
hiddenGönderilen ama gösterilmeyen bir değerID'ler ve token'lar için
submitBir gönder butonu<button type="submit"> daha esnektir
resetBir sıfırla butonuNadiren iyi bir fikirdir
buttonKendi başına hiçbir şey yapmayan bir butonJavaScript için
imageResim olarak çizilen bir gönder butonuTıklama koordinatlarını da gönderir

Metin türleri ve telefon klavyeleri

email, url, tel, search ve text masaüstünde hep bir metin kutusu gibi görünür. Fark doğrulamada ve telefonlarda hangi klavyenin açıldığındadır. Bu örnekte kenarlık, tarayıcının değeri nasıl değerlendirdiğine göre yeşile ya da kırmızıya döner:

  • ada@example tarayıcı için geçerli bir e-postadır: yalnızca metin, @ ve bir alan adı olup olmadığına bakar, alan adında nokta olup olmadığına bakmaz. Gerçek kontrol sunucuda yapılır.
  • example.com geçerli bir url değildir, çünkü şeması yoktur. https://example.com geçerlidir.
  • tel her şeyi kabul eder. Telefon biçimleri ülkeler arasında çok fazla değişir, bu yüzden yerleşik bir kontrol yoktur; gerekirse bir pattern ekle.
  • inputmode="numeric", telefonlardan type="number" sorunları olmadan bir rakam klavyesi ister; posta kodları, tek kullanımlık kodlar ve kart numaraları için doğru seçim olmasının nedeni budur.

number ve range

İkisi de min, max ve step alır. number kesin değerler içindir; range ise kesin sayının daha az önemli olduğu değerler için bir kaydırıcıdır. Range kaydırıcısı sayı göstermez, bu yüzden onu bir <output> ile eşleştir:

number için step varsayılan olarak 1 olur, bu yüzden step="0.01" olmayan bir fiyat alanı form gönderildiğinde 4.99 değerini reddeder. JavaScript'te input.value her zaman bir string'dir; sayı almak için input.valueAsNumber kullan.

Tarihler ve saatler

Tarih ve saat türleri tarayıcının kendi seçicisini açar. Okurun gördüğü şey yerel ayarlarını izler (09/24/2026, 24.09.2026), ama değer her zaman aynı sabit biçimdedir:

Sunucunun aldığı ve JavaScript'in okuduğu şey bu sabit biçimdir, yani "24.09.2026" ayrıştırmak zorunda kalmazsın. min ve max da aynı biçimi alır. datetime-local saat dilimi içermez: önemliyse sunucuda okurun saat dilimine göre dönüştür.

color ve file

accept="image/*" dosya seçiciyi resimlerle sınırlar (ve telefonlarda kamerayı sunar); accept=".pdf,.docx" gibi uzantılar da alır. Seçici için yalnızca bir ipucudur, bu yüzden dosya türünü sunucuda kontrol et. multiple birkaç dosyaya izin verir. Gerçek bir yükleme için formda ayrıca method="post" ve enctype="multipart/form-data" gerekir.

datalist ile öneriler

Bir <datalist>, bir metin alanına herhangi bir değere yine izin verirken bir öneri listesi verir. Onları list özelliğiyle bağla:

Eşleşen önerileri görmek için alana "ja" yaz. Bir açılır liste (select) elementinin aksine, okur listede olmayan bir değer yazabilir.

input'larda çalışan özellikler

ÖzellikNe yapar
nameDeğerin gönderildiği anahtar
valueBaşlangıç değeri
placeholderAlan boşken gösterilen ipucu (label değil)
requiredGöndermeden önce doldurulmalı
disabledKullanılamaz ve gönderilmez
readonlyDüzenlenemez ama gönderilir
autocompleteNeyin otomatik doldurulacağı: email, name, current-password, one-time-code, off
min, max, stepSayılar, aralıklar, tarihler ve saatler için sınırlar
minlength, maxlengthMetin türleri için uzunluk sınırları
patternDeğerin tamamının eşleşmesi gereken bir düzenli ifade
inputmodeHangi telefon klavyesinin gösterileceği: numeric, decimal, email, tel, url
listBir <datalist> elementinin id değeri
multipleemail ve file için birden fazla değer
acceptfile için dosya türleri

Sık yapılan hatalar

  • Telefon numaraları, posta kodları ya da kart numaraları için type="number". Bunlar miktar değildir. tel ya da inputmode="numeric" ile text kullan.
  • step="0.01" olmayan bir fiyat alanı. Ondalıklı değerler doğrulamadan geçemez.
  • placeholder değerini label olarak kullanmak. Okur yazmaya başladığı anda kaybolur.
  • Güvenlik için accept ya da type="email" değerine güvenmek. Bunlar kolaylıktır; sunucu yeniden kontrol eder.
  • Yedeği olmadan type="month" ya da type="week". Bazı tarayıcılar düz bir metin alanı gösterir.
  • Kapanış </input> etiketi. <input> boş bir elementtir.

Sıkça Sorulan Sorular

HTML'de kaç tane input türü var?

22 tane: button, checkbox, color, date, datetime-local, email, file, hidden, image, month, number, password, radio, range, reset, search, submit, tel, text, time, url ve week. Bilinmeyen ya da eksik bir tür text gibi davranır.

HTML'de varsayılan input türü nedir?

text. type değeri olmayan ya da tarayıcının bilmediği bir türe sahip bir <input>, tek satırlık bir metin alanıdır.

Telefon numaraları ya da posta kodları için type="number" kullanmalı mıyım?

Hayır. number miktarlar içindir: artırma azaltma butonları ekler ve telefon numaralarının içerdiği +, boşluk ve tireleri reddeder. Telefon numaraları için type="tel", posta kodu ve kart numarası gibi kodlar için de inputmode="numeric" ile birlikte type="text" kullan.

input type date hangi biçimi kullanır?

Okur ekranda hangi biçimi görürse görsün, değer her zaman 2026-09-24 gibi YYYY-MM-DD şeklindedir. Görüntü okurun yerel ayarlarını izler; gönderilen ve script ile okunan değer izlemez.

input etiketinin kapanış etiketi gerekir mi?

Hayır. <input> boş bir elementtir: <input type="text" name="city"> yaz. Kapanış </input> etiketi geçersizdir, <input /> içindeki kendiliğinden kapanan eğik çizgiye ise izin verilir ama hiçbir şey yapmaz.

Coddy programming languages illustration

Coddy ile kodlamayı öğren

BAŞLA