From 651b62955b247cad393380ff22f40bccd8a55210 Mon Sep 17 00:00:00 2001 From: Kai Moritz Date: Fri, 19 Jun 2026 10:18:02 +0000 Subject: [PATCH] =?utf8?q?CLAUDE.md:=20Resurrection=20als=20Platzhalter=20?= =?utf8?q?dokumentieren,=20CSS-Layouts-Abschnitt=20erg=C3=A4nzen?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Resurrection ist ein Platzhalter für ein zukünftig zu entwickelndes Layout und darf bei CSS-Änderungen ignoriert werden. Neuer Abschnitt erklärt alle drei Layouts (classic/none/resurrection) und ihr Scope-Modell. Außerdem: alias-hint-Regel korrekt auf Classic eingeschränkt (war fälschlich als "alle Screen-Layouts" beschrieben); Verweis auf neuen CSS-Layouts-Abschnitt. Co-Authored-By: Claude Sonnet 4.6 --- CLAUDE.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 78481cdc..c77777ea 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -140,7 +140,7 @@ Der Projects-Bereich unterscheidet zwischen **sichtbaren** und **nicht sichtbare 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: ` (Schnellzugriff)` direkt nach dem Titel-Element (`` oder ``). Der Hinweis steht **außerhalb** von `` 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. +Alias-Nodes erhalten zusätzlich einen Barrierefreiheits-Hinweis im Markup: ` (Schnellzugriff)` direkt nach dem Titel-Element (`` oder ``). Der Hinweis steht **außerhalb** von `` 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 im Classic-Layout ausgeblendet (da `navigation.scss` unter `:root[data-layout="classic"]` eingebunden ist — siehe Abschnitt „CSS-Layouts" unten). 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: @@ -238,6 +238,14 @@ SCSS-Quellen liegen in `src/styles/`. Sie werden über einen separaten `sass`-CL SCSS-Änderungen erfordern `npm run build:css` oder einen Dev-Server-Neustart; HMR für SCSS funktioniert nicht automatisch. +### CSS-Layouts + +Die Website kennt drei Layouts, die per `data-layout`-Attribut am ``-Element gesetzt werden: + +- **`classic`** — das aktive Produktionslayout. Alle SCSS-Quellen (außer Resurrection) sind unter `:root[data-layout="classic"]` gescoped. Hier findet die gesamte CSS-Entwicklung statt. +- **`none`** — kein Layout-CSS. Zeigt das rohe HTML-Markup ohne Stilisierung; dient zur Kontrolle der Markup-Qualität und Barrierefreiheit (Screen-Reader, Text-Browser). +- **`resurrection`** — **Platzhalter** für ein zukünftig neu zu entwickelndes Layout. Darf derzeit bei CSS-Änderungen ignoriert werden — weder kontrollieren noch anpassen, bis die Überarbeitung von Markup und Classic-Layout abgeschlossen ist. + ### Taxonomy-URL-Struktur Taxonomy-Seiten sind auf zwei URL-Ebenen verteilt: -- 2.39.5