]> juplo.de Git - website/commitdiff
Alias-Hinweis im Sitemap-Menü für Barrierefreiheit
authorKai Moritz <kai.milan.moritz@googlemail.com>
Fri, 19 Jun 2026 09:47:57 +0000 (09:47 +0000)
committerKai Moritz <kai.milan.moritz@googlemail.com>
Fri, 19 Jun 2026 10:23:20 +0000 (12:23 +0200)
Alias-Einträge im Sitemap-Menü erhalten jetzt einen Hinweis-Span
'(Schnellzugriff)' direkt nach dem Titel-Element, außerhalb von <strong>.
Dadurch ist der Hinweis nie fett – auch nicht wenn die Seite aktiv ist.

Im CSS (base/navigation.scss) wird #submenu .alias-hint ausgeblendet, sodass
der Hinweis nur im Layout 'None' (kein CSS) sichtbar bleibt – für
Screen-Reader und Text-Browser.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
CLAUDE.md

index a8f7fbc8b75d39128771abe551dc967395993de8..78481cdc5f6cff124fa395916d6da89a21a6519f 100644 (file)
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -138,7 +138,9 @@ Der Projects-Bereich unterscheidet zwischen **sichtbaren** und **nicht sichtbare
 
 **Alias-Einträge (`params.alias: true`):** Seiten, die in `stili-json` in mehreren `childs`-Listen auftauchen, werden vom Import-Skript an mehreren Stellen im Content-Tree abgelegt. Die primäre Datei (kanonischer Ort, mit Body + Routing) folgt den `crumbs`/`path`-Feldern. Zusätzliche **Stub-Dateien** (leer, kein Routing) entstehen an den weiteren Positionen und erhalten `params.alias: true`.
 
-In `BlogNav.astro` werden Alias-Nodes mit der CSS-Klasse `alias` versehen. In der `off`-Berechnung überspringen Alias-Nodes `isCurrent` und `isAncestor` — dadurch sind sie im Classic-Layout versteckt, wenn die Seite aktiv ist (der kanonische Eintrag übernimmt die Darstellung). Sichtbar sind sie als Geschwister (normale `isSibling`-Logik). Im Layout „None" (kein CSS) erscheinen alle Einträge, kanonischer und Alias-Eintrag beide fett.
+In `BlogNav.astro` werden Alias-Nodes mit der CSS-Klasse `alias` versehen. In der `off`-Berechnung überspringen Alias-Nodes `isCurrent` und `isAncestor` — dadurch sind sie im Classic-Layout versteckt, wenn die Seite aktiv ist (der kanonische Eintrag übernimmt die Darstellung). Sichtbar sind sie als Geschwister (normale `isSibling`-Logik).
+
+Alias-Nodes erhalten zusätzlich einen Barrierefreiheits-Hinweis im Markup: `<span class="alias-hint"> (Schnellzugriff)</span>` direkt nach dem Titel-Element (`<strong>` oder `<a>`). Der Hinweis steht **außerhalb** von `<strong>` und ist damit nie fett — auch nicht wenn die Seite aktiv ist. Im Layout „None" (kein CSS) erscheint der Hinweis, damit Nutzende von Text-Browsern und Screen-Readern erkennen, dass dieser Eintrag ein Zusatzzugang zu einer auch anderswo gelisteten Seite ist. Im CSS (`base/navigation.scss`: `#submenu .alias-hint { display: none }`) wird er in allen Screen-Layouts ausgeblendet. Der kanonische Eintrag erhält keinen Hinweis.
 
 **Generierte Inhalte (apidocs, xref etc.):** Maven-Site-Outputs liegen fertig generiert in `public/projects/PROJEKT_NAME/VERSION/` und werden als statische Dateien ausgeliefert — ohne Astro-Layout, ohne HTML-Anpassungen, ohne Routing-Dateien in `src/pages/`. `src/lib/projects.ts` (`generatedDocNodes()`) erkennt diese Verzeichnisse zur Build-Zeit automatisch und fügt sie als Nav-Blatteinträge hinzu: