Sie fragten "wie schlimm". Also, um @ RobertKoritniks (vollkommen genaue) Antwort ein wenig zu präzisieren ...
Dieser Code ist falsch. Falsch kommt nicht in Graustufen. Dieser Code verstößt gegen den Standard und ist daher falsch. Die Validierungsprüfung würde fehlschlagen, und das sollte auch so sein.
Das heißt, kein Browser auf dem Markt würde sich darüber beschweren oder überhaupt ein Problem damit haben. Browser hätten das Recht , sich darüber zu beschweren, aber keine der aktuellen Versionen von ihnen tut dies derzeit. Dies bedeutet nicht, dass zukünftige Versionen diesen Code möglicherweise nicht schlecht behandeln.
Ihr Verhalten, wenn Sie versuchen, diese ID als Selektor in CSS oder Javascript zu verwenden, ist nicht zu erraten und variiert wahrscheinlich von Browser zu Browser. Ich nehme an, dass eine Studie durchgeführt werden könnte, um zu sehen, wie jeder Browser darauf reagiert. Ich denke, im besten Fall würde es wie "class =" behandelt und die Liste ausgewählt. (Dies könnte jedoch die JavaScript - Bibliotheken verwirren. Wenn ich der Autor von jQuery wäre, hätte ich möglicherweise meinen Auswahlcode so optimiert, dass ich ein einzelnes Objekt erwarte und ein Liste könnte mich komplett verpfuschen.)
Es kann auch das erste oder möglicherweise das letzte oder keines davon auswählen oder den Browser vollständig zum Absturz bringen. Keine Möglichkeit zu sagen, ohne es zu versuchen.
"Wie schlecht" hängt dann ganz davon ab, wie streng ein bestimmter Browser die HTML-Spezifikation implementiert und was er tut, wenn er mit einer Verletzung dieser Spezifikation konfrontiert wird.
EDIT: Das habe ich gerade heute gesehen. Ich rufe verschiedene Komponenten von Suchformularen auf verschiedenen Arten von Entitäten ab, um ein großartiges All-in-One-Berichtsdienstprogramm für diese Site zu erstellen. Ich lade die Suchformulare der Remote-Seiten in versteckten Divs hoch und füge sie in meine ein Berichtsgenerator, wenn der entsprechende Entitätstyp als Quelle für den Bericht ausgewählt wurde. Es gibt also eine versteckte Version des Formulars und eine Version, die im Berichtsgenerator angezeigt wird. Das mitgelieferte JavaScript bezieht sich in jedem Fall auf Elemente nach ID, von denen sich jetzt ZWEI auf der Seite befinden - das versteckte und das angezeigte.
Was jQuery zu tun scheint, ist, mich als ERSTEN auszuwählen, was in jedem Fall genau das ist, was ich NICHT will.
Ich arbeite daran, indem ich Selektoren schreibe, um den Bereich der Seite anzugeben, in den ich mein Feld einfügen möchte (dh: $ ('# containerDiv #specificElement')). Aber es gibt eine Antwort auf Ihre Frage: jQuery auf Chrome verhält sich bei dieser Verletzung der technischen Daten auf jeden Fall anders.