2010-06-29 11 views
90

Considerando le seguenti 2 righe di codice (copiato da w3schools.com> "HTML < label> per attributo"):Per quanto riguarda la della casa editrice HTML "Per" Proprietà

<label for="male">Male </label> 
    <input type="radio" name="sex" id="male" /> 

Sto avendo difficoltà scoprire lo scopo esatto della proprietà "per" dell'etichetta sopra. Come puoi vedere, attualmente è impostato su "male" (per abbinare l'id del controllo di input).

Tutto quello che ho letto finora è che il codice sopra 'associerà' e 'rilegherà' l'etichetta con il controllo di input. Quindi la mia domanda è, cosa significa esattamente?

Quali sono esattamente i risultati dell'associazione dell'etichetta al controllo di input?
L'etichetta e/o l'input presentano nuovi comportamenti come risultato di questa "associazione"?

+4

Voi ragazzi lavorate in fretta, grazie per le tante risposte, vorrei poterti dare un segno di spunta :) – user328414

+0

@user Questa domanda è stata posta il 29 giu 10 alle 16:53 dove il tuo duplicato è stato chiesto il 25 agosto " 13 alle 18:40. – user328414

risposta

135

È possibile fare clic su unassociato a un controllo tramite for. Cliccando seleziona il controllo. Molto utile con radio/caselle di controllo in particolare. Ha anche implicazioni di accessibilità per i lettori di schermo per ipovedenti.

+0

+1 fai clic sul testo e l'elemento associato sarà selezionato – galambalazs

+59

+1 buon lavoro, anche prezioso da notare se usi

+6

Vale la pena notare che è possibile ottenere lo stesso comportamento racchiudendo il tag 'input' all'interno del tag' label' in questo modo: http://jsfiddle.net/makeblake/9y86g/ –

9

Quando si fa clic sul dell'etichetta (maschio), la radio sarà controllato cosa non possibile se non si utilizza un'etichetta. Un'etichetta è utile anche per lo sviluppo di dispositivi di piccole dimensioni come i cellulari.

Quindi, è utile per:

  • accessibilità ragiona
  • dispositivi più piccoli, come telefoni cellulari, ecc
  • utili in pulsanti di opzione e caselle di controllo in particolare
+0

Uh, è 'label', non' lable'. – ceejayoz

+0

@ceejayoz: sì un refuso, risolto, grazie – Sarfraz

+0

I contenuti del link sono cambiati? Non ho trovato informazioni. –

3

Credo che collega un'etichetta su un elemento del modulo consente di assegnare allo label una chiave di accesso, che porterà lo stato attivo all'elemento del modulo ad esso associato.

Come altri utenti hanno menzionato, consente anche di fare clic su label e portare lo stato attivo all'elemento del modulo.

L'attributo for consente di posizionare label e l'elemento in aree semanticamente differenti dell'html e mantenere l'associazione. (Come due tavoli, o due div diverse). Se stai mettendo entrambi insieme come nell'esempio, è anche corretto racchiudere l'elemento del modulo nell'etichetta e rinunciare all'attributo for

3

Sì, credo che agisca come un controllo del modulo o un meccanismo di controllo quando compilando un modulo sulla pagina Web, in particolare quelli con pulsanti di opzione o caselle di controllo. Facendo clic sull'etichetta, l'utente punta direttamente a un'area del modulo in cui devono essere digitate le informazioni corrette. Ad esempio, un "testo". Oppure, in un caso in cui l'utente deve scegliere tra alcune opzioni, come vero o falso, o maschio o femmina.

Problemi correlati