2013-05-31 12 views
5

Recentemente ha avuto un dibattito su una domanda here in cui l'utente nella risposta ha dichiarato che l'ID inizia con un numero è accettabile in HTML5, quindi è vero? Non vedo alcuna documentazione pertinente su questo argomento, inoltre mi ha fornito un collegamento alla risposta this qui, ma sembra che il collegamento rilevante non esista più.È valido avviare un ID con un numero in HTML5? Altre tecnologie supportano questi ID se utilizziamo il doctype HTML5?

Quindi la domanda è, fare HTML5 consentire ids per iniziare con un numero?

Ora di sicuro questo non riesce a CSS -

<div id="5hello">Fails Completely</div> 

#5hello { 
    color: red; 
} 

Update: io non sono nemmeno sicuro, che HTML5 permette al id's per iniziare con un numero o no, è solo che dichiarando id su un l'elemento non è sufficiente, in quanto HTML non è una domanda qui, ma l'utilizzo di <!DOCTYPE html> consente ad altre tecnologie come CSS e JavaScript di funzionare con l'id che inizia con no? Sono sicuro che il CSS fallisce, non è testato con JavaScript, ma sono sicuro che anche questo fallirà.

risposta

4

In base a questo guy la risposta è SI.

HTML5 elimina le restrizioni aggiuntive sull'attributo id. Gli unici requisiti, a parte l'unicità nel documento, sono che il valore deve contenere almeno un carattere (non può essere vuoto), e che non può contenere spazi.

Si dovrebbe seguire documenti W3C riguardo a questa domanda: link

3.2.3.1 L'attributo id

L'attributo id specifica identificatore unico del suo elemento (ID). [DOMCORE]

Il valore deve essere univoco tra tutti gli ID nella sottostruttura home dell'elemento e deve contenere almeno un carattere. Il valore non deve contenere spazi.

identificatore unico di un elemento può essere utilizzato per una varietà di scopi, soprattutto come un modo per collegare parti specifiche di un documento utilizzando identificatori di frammento, come un modo per indirizzare un elemento quando script, e come modo di modellare uno specifico elemento dai CSS.

Gli identificatori sono stringhe opache. I significati particolari non dovrebbero essere derivati ​​dal valore dell'attributo id.

Modifica 1: mi piace molto questo commento, quindi se all'autore non dispiace aggiungerò alla mia risposta.
“CSS fallisce” - no, devi solo farlo nel modo giusto: link

+0

Sì, ho condiviso questo link sulla risposta fornita dall'utente in altra domanda, e voglio una risposta documentata e non solo quello qualcuno dice .. –

+0

@Mr.Alien Controlla la mia modifica –

+3

Non importa se HTML5 si libera di esso, è piuttosto normale tra i programmatori non avviare metodi, funzioni o qualsiasi cosa con i numeri - quindi perché cambiare per un linguaggio di markup? Segui quello che fai già :) – Jimbo