Breadcrumb navigation

Die Breadcrumb-Navigation hilft dem Benutzer, seine Position auf der Website zu verstehen, indem sie einen Breadcrumb-Pfad zurück zur Startseite bietet. Die Elemente werden typischerweise inline angezeigt, mit einem Trenner zwischen jedem Element, der die Hierarchie zwischen den einzelnen Seiten angibt.

Links werden inline mit Trennern angezeigt

Anforderungen

Stellen Sie die Hierarchie der Website dar, indem Sie Links inline anzeigen, wobei ein Trenner zwischen den Elementen die Hierarchie zwischen den einzelnen Seiten angibt. Die aktuelle Seite erscheint zuletzt.

Rezept

Hinweis: Das obige Beispiel verwendet einen komplexen Selektor, um Inhalt vor jedem li einzufügen, außer dem letzten. Dies könnte auch mit einem komplexen Selektor erreicht werden, der auf alle li-Elemente außer dem ersten abzielt:

css
.breadcrumb li:not(:first-child)::before {
  content: "→";
}

Fühlen Sie sich frei, die Lösung zu wählen, die Sie bevorzugen.

Getroffene Entscheidungen

Um Listenelemente inline anzuzeigen, verwenden wir das Flexbox-Layout und zeigen somit, wie eine Zeile CSS unsere Navigation ermöglichen kann. Die Trenner werden mittels CSS generierter Inhalte hinzugefügt. Sie könnten diese zu einem beliebigen Trenner ändern, der Ihnen gefällt.

Barrierefreiheit

Wir haben die Attribute aria-label und aria-current verwendet, um Benutzern unterstützender Technologien zu helfen, zu verstehen, was diese Navigation ist und wo sich die aktuelle Seite in der Struktur befindet. Weitere Informationen finden Sie in den verwandten Links.

Beachten Sie, dass die Trennerpfeile , die über die CSS-Eigenschaft content im obigen Beispiel hinzugefügt werden, für unterstützende Technologien (AT) wie Bildschirmlesegeräte und Brailleanzeigen zugänglich sind. Für eine ruhigere Lösung verwenden Sie ein dekoratives <img> in Ihrem HTML mit einem leeren alt-Attribut. Ein ARIA role gesetzt auf none oder presentation verhindert ebenfalls, dass das Bild für AT sichtbar ist.

Alternativ können Sie die CSS generierten Inhalte durch Einschließen eines leeren Strings als Alternativtext, vorangestellt mit einem Schrägstrich (/), zum Schweigen bringen; zum Beispiel content: url("arrow.png") / "";.

Wenn Sie generierte Trenner einfügen, die für AT sichtbar sind, wählen Sie stattdessen den ::after-Pseudoelement-Selektor anstelle von ::before, sodass der Trennerinhalt nach dem HTML-Inhalt und nicht davor angekündigt wird.

Siehe auch