2010-11-22 4 views

Antwort

15

In HTML5, die einzigen Einschränkungen sind, dass die ID innerhalb des Dokuments eindeutig sein müssen, enthalten mindestens ein Zeichen und enthalten keine Leerzeichen. Siehe http://www.w3.org/TR/2014/REC-html5-20141028/dom.html#the-id-attribute

Wie andere Antworten haben darauf hingewiesen, HTML 4 ist restriktiver und gibt an, dass

ID und NAME-Token mit einem Buchstaben beginnen müssen ([A-Za-z]) und können durch folgen beliebig viele Buchstaben, Ziffern ([0-9]), Bindestriche ("-"), Unterstriche ("_"), Doppelpunkte (":") und Punkte (".").

11

In HTML 4, die id attribute holds a NAME token welche sind defined:

ID und NAME Token mit einem Buchstaben beginnen muß ([A-Za-z]) und kann durch eine beliebige Anzahl von Buchstaben folgen, Ziffern ([0-9]), Bindestriche ("-"), Unterstriche ("_"), Doppelpunkte (":") und Punkte (".").

Wie bereits in einem frühen Post aus, von der Implementierung abhängig müssen Sie unter Umständen Probleme mit Doppelpunkten und Perioden zusammen mit anderen: What are valid values for the id attribute in HTML?

+1

In HTML5 gibt es weniger Einschränkungen: Die ID muss innerhalb des Dokuments eindeutig sein, mindestens ein Zeichen enthalten und keine Leerzeichen enthalten, und das war's. Siehe http://www.w3.org/TR/html5/dom.html#the-id-attribute –

+0

Wie @Tim Down sagte, beseitigt HTML5 die meisten dieser Einschränkungen. Siehe http://mathiasbynens.be/notes/html5-id-class, in dem auch erläutert wird, wie seltsame IDs (oder andere Attributwerte) für die Verwendung in CSS und JavaScript entfernt werden können. ([Ich habe auch ein Werkzeug dafür gemacht.] ( –

7

Von http://www.w3.org/TR/html4/types.html:

ID und NAME-Token müssen beginnen, mit einem Brief ([A-Za-z]) und kann gefolgt werden durch eine beliebige Anzahl von Buchstaben, Ziffern ([0-9]), Bindestriche ("-"), Unterstriche ("_"), Doppelpunkte (":") und Punkte (".").

+1

) HTML5 beseitigt die meisten dieser Einschränkungen. Siehe http://mathiasbynens.be/notes/html5-id-class, in dem auch erläutert wird, wie seltsame IDs (oder andere Attributwerte) für die Verwendung in CSS und JavaScript entfernt werden können. ([Ich habe auch ein Werkzeug dafür gemacht.] ( –

2

Von den HTML4 specification:

ID und NAME-Token müssen mit einem Buchstaben ([A-Za-z]) beginnen und kann durch eine beliebige Anzahl von Buchstaben, Ziffern ([0-9]) verfolgt werden , Bindestriche ("-"), Unterstriche ("_"), Doppelpunkte (":") und Punkte (".").

+0

) HTML5 beseitigt die meisten dieser Einschränkungen. Siehe http://mathiasbynens.be/notes/html5-id-class, das auch erklärt, wie man seltsame IDs (oder andere Attributwerte) für die Verwendung in CSS und JavaScript entkommt. ([Ich habe auch ein Werkzeug dafür gemacht.] (Http://mothereffingcssescapes.com/)) –

3

Alle oben genannten Antworten + ID muss einzigartige

0

eigentlich kann ich erfolgreich ° verwenden, zB

< span id = "test °" />

Scheint zu dürfen, und ich habe kein Problem mit jQuery oder anderer Weise Holen Sie dom-Elemente über die Selektoren. Vielleicht funktionieren andere Zeichen, aber ich habe sie nicht alle getestet.

Verwandte Themen