Saya ingin tahu apa perbedaan antara dua cuplikan kode berikut:
<label>Input here : </label>
<input type='text' name='theinput' id='theinput'/>
dan
<label for='theinput'>Input here : </label>
<input type='text' name='theinput' id='theinput'/>
Saya yakin itu melakukan sesuatu ketika Anda menggunakan perpustakaan JavaScript khusus, tetapi selain itu, apakah itu memvalidasi HTML atau diperlukan karena alasan lain?
select
hanya menempatkan fokus pada pilihan daripada memperluas opsi.The
for
atribut asosiasi label dengan elemen kontrol, seperti yang didefinisikan dalam deskripsilabel
di HTML 4.01 spec. Ini menyiratkan, antara lain, bahwa ketikalabel
elemen menerima fokus (misalnya dengan diklik), ia meneruskan fokus ke kontrol terkait. Hubungan antara label dan kontrol juga dapat digunakan oleh agen pengguna berbasis ucapan, yang dapat memberikan pengguna cara untuk bertanya apa label terkait, ketika berhadapan dengan kontrol. (Asosiasi mungkin tidak sejelas dalam rendering visual.)Pada contoh pertama dalam pertanyaan (tanpa
for
), penggunaanlabel
markup tidak memiliki implikasi logis atau fungsional - tidak ada gunanya, kecuali jika Anda melakukan sesuatu dengannya dalam CSS atau JavaScript.Spesifikasi HTML tidak mengharuskan untuk mengaitkan label dengan kontrol, tetapi Panduan Aksesibilitas Konten Web (WCAG) 2.0 melakukannya. Ini dijelaskan dalam dokumen teknis H44: Menggunakan elemen label untuk mengaitkan label teks dengan kontrol formulir , yang juga menjelaskan bahwa asosiasi implisit (dengan bersarang misalnya
input
di dalamlabel
) tidak didukung secara luas seperti asosiasi eksplisit melaluifor
danid
atribut,sumber
Singkatnya apa yang dilakukannya mengacu
id
pada input, itu saja:sumber
Atribut for dari
<label>
tag harus sama dengan atribut id dari elemen terkait untuk mengikatnya.sumber
Atribut for menunjukkan bahwa label ini adalah singkatan dari bidang input terkait, atau kotak centang atau tombol radio atau bidang entri data lainnya yang terkait dengannya. sebagai contoh
sumber
Ini memberi label input apa pun adalah parameter untuk
for
atribut.sumber