Zum Inhalt springen
SilktideHilfe

Doppelte IDs

Silktide findet Seiten, auf denen derselbe id-Wert in mehr als einem Element verwendet wird. IDs müssen innerhalb einer Seite eindeutig sein, denn alles, was sich auf eine ID bezieht – Formularbeschriftungen, ARIA‑Beziehungen, seiteninterne Links – kann sonst nur eines der Duplikate finden.

<!-- Beide Eingabefelder haben id=\"name\": Welchem Feld ist welches Label zugeordnet? -->
<label for=\"name\">Ihr Name</label>
<input id=\"name\">

<label for=\"name\">Firmenname</label>
<input id=\"name\">

Warum das wichtig ist

sind auf ID‑Verweise angewiesen, um zusammengehörige Elemente zu verknüpfen. Wenn IDs doppelt vorhanden sind, kann ein die falsche Beschriftung für ein Formularfeld vorlesen – oder gar keine. Im obigen Beispiel könnten beide Felder als „Ihr Name“ angekündigt werden, sodass der Benutzer seinen Namen in das Firmenfeld eingibt. Derselbe Fehler betrifft Attribute wie aria-labelledby und aria-describedby sowie seiteninterne Links, die zu einer #id springen.

So beheben Sie das

  1. Benennen Sie die Duplikate um, sodass jede id auf der Seite eindeutig ist, und aktualisieren Sie alles, was sich darauf bezogen hat (for‑Attribute, ARIA‑Attribute, Links).
  2. Wenn die Duplikate aus einer wiederholten Komponente stammen – einer Vorlage, die pro Seite mehrfach ausgegeben wird –, korrigieren Sie die Vorlage so, dass eindeutige IDs erzeugt werden, oder verwenden Sie Klassen statt IDs für Styling‑Hooks, die keine Referenzierung benötigen.
  3. Wenn ein gemeldetes Duplikat in Ihrem Kontext tatsächlich unbedenklich ist, können Sie den Fund ignorieren.

So testet Silktide dies

  1. Alle Elemente auf der Seite mit einem id‑Attribut finden. Elemente innerhalb von SVG‑Grafiken werden übersprungen, da deren IDs in einem separaten Kontext existieren.
  2. Elemente nach ihrem id‑Wert gruppieren.
  3. Wenn mehr als ein Element dieselbe id hat, wird jedes davon markiert.

Mehr erfahren

Zuletzt aktualisiert

War diese Seite hilfreich?

Doppelte IDs | Silktide-Hilfe