Typografie: Lesebreite begrenzt -- 105 zu breite Absaetze behoben
Gemessen ueber alle Seiten: 105 von 200 Textabsaetzen waren zu breit, der schlimmste mit 151 Zeichen pro Zeile. WARUM DAS ZAEHLT Beim Zeilensprung muss das Auge zurueck an den Zeilenanfang finden. Je laenger die Zeile, desto haeufiger landet es in der falschen -- man liest eine Zeile doppelt oder ueberspringt eine und merkt es erst zwei Saetze spaeter. Der Text ist dann nicht "schwer", er ist schlecht gesetzt. Bewaehrt sind 45 bis 75 Zeichen. Das ist der aelteste und bestbelegte Grundsatz der Typografie ueberhaupt -- jedes ordentlich gesetzte Buch haelt sich daran. Jetzt 68 Zeichen fuer Fliesstext, 60 fuer Kleingedrucktes. Die Einheit ist ch statt Pixel: Damit haengt die Breite an der SCHRIFTGROESSE. Kleingedrucktes bekommt automatisch einen schmaleren Block, grosse Schrift einen breiteren -- beide landen bei aehnlich vielen Zeichen. max-width macht nie etwas breiter. In schmalen Karten und Spalten aendert sich also nichts; die Regel greift nur dort, wo eine Zeile wirklich ueber das Lesbare hinauswaechst. Ergebnis: von 105 auf 0. DREI FEHLER BEIM EINBAU, ALLE VON DER MESSUNG GEFUNDEN 1. Zentrierter Text stand ploetzlich links. Eine Breitenbegrenzung zentriert den KASTEN nicht mit -- die Schrift war mittig, ihr Kasten klebte am linken Rand, mit 384 Pixeln Luft rechts und null links. Gefunden, weil die Pruefung den Abstand links mit dem rechts VERGLEICHT, statt nur zu zaehlen, ob zentriert ist. 2. Meine erste Regel deckte nur den Fall ab, dass das ELTERNELEMENT zentriert -- nicht den, dass der Absatz es selbst tut. 3. Und dann blieb einer uebrig, bei dem beides stimmte. Ursache: ein Inline-Stil "margin:1.2rem 0 0". Die Kurzschreibweise setzt links und rechts hart auf 0 und schlaegt jede Stilvorlage. 11 solche Stellen ueber fuenf Seiten auf margin-top umgestellt -- gemeint war ohnehin immer nur der Abstand nach oben. Ausnahmen bewusst gesetzt: Nachrichtenblasen tragen ihre Breite schon selbst, Tabellenzellen und Beschreibungslisten richten sich nach ihrer Spalte, die Fusszeile ist mehrspaltig und ohnehin schmal. ALLES GRUEN: Gestaltung 0 Befunde, Designsystem 5, Verwaltung 69, Portal 32, Widerruf 58, Anfragedetail 20. Versionsstempel und Cache auf v18. Co-Authored-By: Claude Opus 5 <[email protected]>
@@ -1922,3 +1922,97 @@ a.wd-karte:active, .wd-karte--klickbar:active {
|
|||||||
transform: none !important;
|
transform: none !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
LESEBREITE (23.08.2026)
|
||||||
|
|
||||||
|
Gemessen über alle Seiten: 105 von 200 Textabsätzen waren zu breit,
|
||||||
|
der schlimmste mit 151 Zeichen pro Zeile.
|
||||||
|
|
||||||
|
Warum das zählt: Beim Zeilensprung muss das Auge zurück an den
|
||||||
|
Zeilenanfang finden. Je länger die Zeile, desto häufiger landet es in
|
||||||
|
der falschen — man liest eine Zeile doppelt oder überspringt eine und
|
||||||
|
merkt es erst zwei Sätze später. Der Text ist dann nicht "schwer", er
|
||||||
|
ist schlecht gesetzt.
|
||||||
|
|
||||||
|
Bewährt sind 45 bis 75 Zeichen. Bücher, Zeitungen und jedes ordentlich
|
||||||
|
gesetzte Buch halten sich daran; es ist der älteste und bestbelegte
|
||||||
|
Grundsatz der Typografie überhaupt.
|
||||||
|
|
||||||
|
Die Einheit ist ch (Breite der Ziffer Null). Damit hängt die Breite an
|
||||||
|
der SCHRIFTGRÖSSE, nicht an Pixeln: Kleingedrucktes bekommt
|
||||||
|
automatisch einen schmaleren Block, große Schrift einen breiteren --
|
||||||
|
in beiden Fällen landet man bei ähnlich vielen Zeichen.
|
||||||
|
|
||||||
|
max-width macht nie etwas breiter. In schmalen Karten und Spalten
|
||||||
|
ändert sich also gar nichts -- die Regel greift nur dort, wo eine
|
||||||
|
Zeile wirklich über das Lesbare hinauswächst.
|
||||||
|
===================================================================== */
|
||||||
|
:root {
|
||||||
|
--wd-lesebreite: 68ch;
|
||||||
|
--wd-lesebreite-eng: 60ch; /* für Kleingedrucktes und Hinweise */
|
||||||
|
}
|
||||||
|
|
||||||
|
.wd p,
|
||||||
|
.wd li,
|
||||||
|
.wd .wd-fuehrung {
|
||||||
|
max-width: var(--wd-lesebreite);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Kleingedrucktes darf enger stehen: Es wird überflogen, nicht gelesen,
|
||||||
|
und ein schmaler Block ist dabei schneller zu erfassen. */
|
||||||
|
.wd .wd-klein,
|
||||||
|
.wd .wd-feld-hilfe,
|
||||||
|
.wd .rl-text .wd-klein {
|
||||||
|
max-width: var(--wd-lesebreite-eng);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Wo mittig gesetzt wird, muss auch der BLOCK mittig bleiben.
|
||||||
|
Ohne das klebt zentrierter Text nach der Begrenzung am linken Rand --
|
||||||
|
die Schrift wäre zentriert, ihr Kasten aber nicht. */
|
||||||
|
/* Zwei Faelle, beide noetig:
|
||||||
|
|
||||||
|
ELTERNELEMENT zentriert -> die Kinder mittig halten
|
||||||
|
ABSATZ SELBST zentriert -> ihn selbst mittig halten
|
||||||
|
|
||||||
|
Beim ersten Versuch fehlte der zweite Fall. Ergebnis: zwei Absaetze,
|
||||||
|
deren Schrift zentriert war, deren Kasten aber links klebte -- auf
|
||||||
|
anfrage.html mit 384 Pixeln Luft rechts und null links. Gefunden, weil
|
||||||
|
die Pruefung den Abstand links mit dem rechts VERGLEICHT, statt nur zu
|
||||||
|
zaehlen, ob zentriert ist. */
|
||||||
|
.wd :is(p, li)[style*="text-align:center"],
|
||||||
|
.wd :is(p, li)[style*="text-align: center"],
|
||||||
|
.wd [style*="text-align:center"] :is(p, li),
|
||||||
|
.wd [style*="text-align: center"] :is(p, li),
|
||||||
|
/* Alle Behaelter, die ihren Inhalt mittig setzen -- aus der zentralen
|
||||||
|
Stilvorlage UND aus den seiteneigenen <style>-Bloecken zusammengesucht.
|
||||||
|
Ein einzelner uebersehener Behaelter faellt sofort auf: Der Text steht
|
||||||
|
dann mittig, sein Kasten aber links. */
|
||||||
|
.wd .po-leer :is(p, li),
|
||||||
|
.wd .af-danke :is(p, li),
|
||||||
|
.wd .wd-cta-flaeche :is(p, li),
|
||||||
|
.wd .wd-intro :is(p, li),
|
||||||
|
.wd .zg-mitte :is(p, li),
|
||||||
|
.wd .vw-leer-gross :is(p, li),
|
||||||
|
.wd .wd-abschnitt--mitte :is(p, li),
|
||||||
|
.wd .wr-fertig > p,
|
||||||
|
.wd .vw-leer-hinweis {
|
||||||
|
margin-inline: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* AUSNAHMEN — hier wäre eine Begrenzung falsch:
|
||||||
|
|
||||||
|
Nachrichtenblasen tragen ihre Breite schon selbst (82 % der Spalte);
|
||||||
|
eine zweite Begrenzung würde sie im Gespräch unruhig springen lassen.
|
||||||
|
|
||||||
|
Tabellenzellen und Beschreibungslisten richten sich nach ihrer Spalte.
|
||||||
|
Eine eigene Breite darin bricht die Ausrichtung zur Nachbarspalte.
|
||||||
|
|
||||||
|
Die Fusszeile ist bewusst mehrspaltig und schon schmal. */
|
||||||
|
.wd .vw-blase p, .wd .po-nachricht p,
|
||||||
|
.wd td p, .wd th p,
|
||||||
|
.wd dd, .wd dd p,
|
||||||
|
.wd .wd-fuss p, .wd .wd-fuss li,
|
||||||
|
.wd .vw-paar dd, .wd .wr-pruef dd, .wd .wr-beleg dd {
|
||||||
|
max-width: none;
|
||||||
|
}
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 156 KiB After Width: | Height: | Size: 157 KiB |
|
Before Width: | Height: | Size: 162 KiB After Width: | Height: | Size: 161 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 926 KiB |
|
Before Width: | Height: | Size: 487 KiB After Width: | Height: | Size: 479 KiB |
|
Before Width: | Height: | Size: 233 KiB After Width: | Height: | Size: 233 KiB |
|
Before Width: | Height: | Size: 459 KiB After Width: | Height: | Size: 457 KiB |
|
Before Width: | Height: | Size: 458 KiB After Width: | Height: | Size: 368 KiB |
|
Before Width: | Height: | Size: 720 KiB After Width: | Height: | Size: 829 KiB |
|
Before Width: | Height: | Size: 385 KiB After Width: | Height: | Size: 382 KiB |
@@ -13,8 +13,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
/* Zeitstrahl: die Linie verbindet die Nummernkreise. Sie liegt hinter
|
/* Zeitstrahl: die Linie verbindet die Nummernkreise. Sie liegt hinter
|
||||||
den Kreisen (z-index) und endet beim letzten Schritt, damit sie nicht
|
den Kreisen (z-index) und endet beim letzten Schritt, damit sie nicht
|
||||||
@@ -183,7 +183,7 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-ablauf.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-ablauf.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
/* ---------- Schrittanzeige ----------
|
/* ---------- Schrittanzeige ----------
|
||||||
Zeigt alle vier Schritte gleichzeitig statt nur "3 von 4". Man sieht
|
Zeigt alle vier Schritte gleichzeitig statt nur "3 von 4". Man sieht
|
||||||
@@ -372,7 +372,7 @@
|
|||||||
</span>
|
</span>
|
||||||
</label>
|
</label>
|
||||||
<p class="wd-feld-fehler" data-fehler="datenschutz"></p>
|
<p class="wd-feld-fehler" data-fehler="datenschutz"></p>
|
||||||
<p class="wd-klein" style="margin:.6rem 0 0">
|
<p class="wd-klein" style="margin-top:.6rem">
|
||||||
<a href="/kontakt.html" target="_blank" rel="noopener" data-i18n="af4_datenschutz_link">Datenschutz nachlesen</a>
|
<a href="/kontakt.html" target="_blank" rel="noopener" data-i18n="af4_datenschutz_link">Datenschutz nachlesen</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
@@ -418,8 +418,8 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-anfrage.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-anfrage.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-anfrage.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-anfrage.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
.fq-thema { scroll-margin-top: 90px; }
|
.fq-thema { scroll-margin-top: 90px; }
|
||||||
.fq-thema + .fq-thema { margin-top: clamp(2rem, 4vw, 3rem); }
|
.fq-thema + .fq-thema { margin-top: clamp(2rem, 4vw, 3rem); }
|
||||||
@@ -195,7 +195,7 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-faq.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-faq.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -16,8 +16,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
/* ---------- Nur auf der Startseite gebraucht ---------- */
|
/* ---------- Nur auf der Startseite gebraucht ---------- */
|
||||||
|
|
||||||
@@ -36,12 +36,12 @@
|
|||||||
.wd-intro-logo { width: clamp(110px, 20vw, 160px); animation: wd-intro-auf .9s cubic-bezier(.22,1,.36,1) both; }
|
.wd-intro-logo { width: clamp(110px, 20vw, 160px); animation: wd-intro-auf .9s cubic-bezier(.22,1,.36,1) both; }
|
||||||
.wd-intro-gruss {
|
.wd-intro-gruss {
|
||||||
font-family: var(--font-head); font-weight: 800;
|
font-family: var(--font-head); font-weight: 800;
|
||||||
font-size: clamp(1.5rem, 4.5vw, 2.4rem); margin: 1rem 0 0; color: var(--wd-text);
|
font-size: clamp(1.5rem, 4.5vw, 2.4rem); margin-top:1rem; color: var(--wd-text);
|
||||||
animation: wd-intro-auf .9s cubic-bezier(.22,1,.36,1) both .25s;
|
animation: wd-intro-auf .9s cubic-bezier(.22,1,.36,1) both .25s;
|
||||||
}
|
}
|
||||||
.wd-intro-unter {
|
.wd-intro-unter {
|
||||||
font-size: .84rem; letter-spacing: .16em; text-transform: uppercase; font-weight: 700;
|
font-size: .84rem; letter-spacing: .16em; text-transform: uppercase; font-weight: 700;
|
||||||
color: var(--wd-blau); margin: .3rem 0 0;
|
color: var(--wd-blau); margin-top:.3rem;
|
||||||
animation: wd-intro-auf .9s cubic-bezier(.22,1,.36,1) both .45s;
|
animation: wd-intro-auf .9s cubic-bezier(.22,1,.36,1) both .45s;
|
||||||
}
|
}
|
||||||
.wd-intro-skip {
|
.wd-intro-skip {
|
||||||
@@ -64,7 +64,7 @@
|
|||||||
}
|
}
|
||||||
.wd-projekt-text { padding: clamp(1.2rem, 2.4vw, 1.7rem); display: flex; flex-direction: column; flex: 1; }
|
.wd-projekt-text { padding: clamp(1.2rem, 2.4vw, 1.7rem); display: flex; flex-direction: column; flex: 1; }
|
||||||
.wd-projekt-text h3 { margin-bottom: .3em; }
|
.wd-projekt-text h3 { margin-bottom: .3em; }
|
||||||
.wd-projekt-zeile { margin: .9rem 0 0; }
|
.wd-projekt-zeile { margin-top:.9rem; }
|
||||||
.wd-projekt-zeile dt {
|
.wd-projekt-zeile dt {
|
||||||
font-size: 0.8rem; letter-spacing: .12em; text-transform: uppercase;
|
font-size: 0.8rem; letter-spacing: .12em; text-transform: uppercase;
|
||||||
font-weight: 800; color: var(--wd-blau); margin-bottom: .15rem;
|
font-weight: 800; color: var(--wd-blau); margin-bottom: .15rem;
|
||||||
@@ -398,7 +398,7 @@
|
|||||||
<div class="wd-btn-reihe">
|
<div class="wd-btn-reihe">
|
||||||
<a class="wd-btn wd-btn--haupt" href="/webdesign/anfrage.html" data-i18n="cta_knopf">Projekt anfragen</a>
|
<a class="wd-btn wd-btn--haupt" href="/webdesign/anfrage.html" data-i18n="cta_knopf">Projekt anfragen</a>
|
||||||
</div>
|
</div>
|
||||||
<p class="wd-klein wd-leise" style="margin:1.2rem 0 0" data-i18n="cta_klein">Unverbindlich · Keine Kosten · Keine automatische Preiszusage</p>
|
<p class="wd-klein wd-leise" style="margin-top:1.2rem" data-i18n="cta_klein">Unverbindlich · Keine Kosten · Keine automatische Preiszusage</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@@ -407,8 +407,8 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-index.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-index.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
<script>
|
<script>
|
||||||
/* ---------------------------------------------------------------------
|
/* ---------------------------------------------------------------------
|
||||||
Marken-Intro (Masterplan S.3, Schritt 02: "Nach erfolgreichem Code
|
Marken-Intro (Masterplan S.3, Schritt 02: "Nach erfolgreichem Code
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
/* Sprungmarken.
|
/* Sprungmarken.
|
||||||
Frueher eine waagerecht wischbare Leiste. Rueckmeldung 22.08.2026:
|
Frueher eine waagerecht wischbare Leiste. Rueckmeldung 22.08.2026:
|
||||||
@@ -331,7 +331,7 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-leistungen.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-leistungen.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -12,8 +12,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
.po-login { max-width: 440px; margin: clamp(1.5rem,6vh,4rem) auto; }
|
.po-login { max-width: 440px; margin: clamp(1.5rem,6vh,4rem) auto; }
|
||||||
|
|
||||||
@@ -93,7 +93,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<button type="submit" class="wd-btn wd-btn--haupt wd-btn--breit" data-i18n="po_anmelden">Anmelden</button>
|
<button type="submit" class="wd-btn wd-btn--haupt wd-btn--breit" data-i18n="po_anmelden">Anmelden</button>
|
||||||
</form>
|
</form>
|
||||||
<p class="wd-klein wd-leise" style="margin:1rem 0 0" data-i18n="po_kein_zugang">Noch keinen Zugang? Der Projektraum wird freigeschaltet, sobald dein Projekt beginnt.</p>
|
<p class="wd-klein wd-leise" style="margin-top:1rem" data-i18n="po_kein_zugang">Noch keinen Zugang? Der Projektraum wird freigeschaltet, sobald dein Projekt beginnt.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- ============ PASSWORT SETZEN ============ -->
|
<!-- ============ PASSWORT SETZEN ============ -->
|
||||||
@@ -134,8 +134,8 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-portal.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-portal.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-portal.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-portal.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
.pfo-projekt { overflow: hidden; padding: 0; margin-bottom: clamp(1.4rem, 3vw, 2.2rem); }
|
.pfo-projekt { overflow: hidden; padding: 0; margin-bottom: clamp(1.4rem, 3vw, 2.2rem); }
|
||||||
.pfo-bild {
|
.pfo-bild {
|
||||||
@@ -192,7 +192,7 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-portfolio.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-portfolio.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
.pr-preis-gross { font-family: var(--font-head); font-weight: 800; color: var(--wd-blau); white-space: nowrap; }
|
.pr-preis-gross { font-family: var(--font-head); font-weight: 800; color: var(--wd-blau); white-space: nowrap; }
|
||||||
|
|
||||||
@@ -196,7 +196,7 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-preise.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-preise.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -8,8 +8,8 @@
|
|||||||
<link rel="icon" type="image/png" href="/assets/img/favicon.png" />
|
<link rel="icon" type="image/png" href="/assets/img/favicon.png" />
|
||||||
<link rel="manifest" href="/webdesign/app.webmanifest" />
|
<link rel="manifest" href="/webdesign/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#05070b" />
|
<meta name="theme-color" content="#05070b" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
</head>
|
</head>
|
||||||
<body class="wd">
|
<body class="wd">
|
||||||
<div id="wd-kopf"></div>
|
<div id="wd-kopf"></div>
|
||||||
@@ -400,6 +400,6 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
Start alle alten Zwischenspeicher weg. Muss bei jeder Änderung an den
|
Start alle alten Zwischenspeicher weg. Muss bei jeder Änderung an den
|
||||||
Dateien unten hochgezählt werden, sonst hängen Nutzer auf einem alten
|
Dateien unten hochgezählt werden, sonst hängen Nutzer auf einem alten
|
||||||
Stand fest. */
|
Stand fest. */
|
||||||
const CACHE_NAME = "dogfather-webdesign-v17";
|
const CACHE_NAME = "dogfather-webdesign-v18";
|
||||||
|
|
||||||
/* Bausteine, die die Oberfläche zum Anzeigen braucht. Bewusst KEINE
|
/* Bausteine, die die Oberfläche zum Anzeigen braucht. Bewusst KEINE
|
||||||
HTML-Datei in dieser Liste. */
|
HTML-Datei in dieser Liste. */
|
||||||
|
|||||||
@@ -13,8 +13,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
.ue-kopf { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
|
.ue-kopf { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
|
||||||
/* Auf dem Handy zuerst der Text, dann das Bild: sonst schiebt ein
|
/* Auf dem Handy zuerst der Text, dann das Bild: sonst schiebt ein
|
||||||
@@ -127,7 +127,7 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-ueber.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-ueber.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -11,8 +11,8 @@
|
|||||||
<link rel="apple-touch-icon" href="/assets/img/wd-app-180.png" />
|
<link rel="apple-touch-icon" href="/assets/img/wd-app-180.png" />
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-title" content="DF Verwaltung" />
|
<meta name="apple-mobile-web-app-title" content="DF Verwaltung" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
/* =====================================================================
|
/* =====================================================================
|
||||||
Verwaltungsbereich — bewusst NUR AUF DEUTSCH.
|
Verwaltungsbereich — bewusst NUR AUF DEUTSCH.
|
||||||
@@ -761,7 +761,7 @@
|
|||||||
<div class="vw-detail-blatt" id="vw-detail-blatt"></div>
|
<div class="vw-detail-blatt" id="vw-detail-blatt"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
<script>
|
<script>
|
||||||
/* =====================================================================
|
/* =====================================================================
|
||||||
Verwaltung: Anfragen ansehen, Status ändern, Notizen, Archivieren.
|
Verwaltung: Anfragen ansehen, Status ändern, Notizen, Archivieren.
|
||||||
@@ -1834,7 +1834,7 @@
|
|||||||
'<label class="vw-pf-schalter">' +
|
'<label class="vw-pf-schalter">' +
|
||||||
'<input type="checkbox" id="vw-p-portfolio"' + (p.portfolio_freigabe ? " checked" : "") + " />" +
|
'<input type="checkbox" id="vw-p-portfolio"' + (p.portfolio_freigabe ? " checked" : "") + " />" +
|
||||||
"<span>Darf ins Portfolio</span></label>" +
|
"<span>Darf ins Portfolio</span></label>" +
|
||||||
'<p class="wd-klein wd-leise" style="margin:.5rem 0 0">Wird sofort gespeichert.</p>' +
|
'<p class="wd-klein wd-leise" style="margin-top:.5rem">Wird sofort gespeichert.</p>' +
|
||||||
"</div>" +
|
"</div>" +
|
||||||
|
|
||||||
/* ----- ÄNDERUNGSWÜNSCHE -----
|
/* ----- ÄNDERUNGSWÜNSCHE -----
|
||||||
@@ -2226,7 +2226,7 @@
|
|||||||
'<button type="button" class="wd-btn wd-btn--haupt" id="pp-speichern">Speichern</button>' +
|
'<button type="button" class="wd-btn wd-btn--haupt" id="pp-speichern">Speichern</button>' +
|
||||||
'<button type="button" class="wd-btn wd-btn--zweit" id="pp-pruefen">Verbindung testen</button>' +
|
'<button type="button" class="wd-btn wd-btn--zweit" id="pp-pruefen">Verbindung testen</button>' +
|
||||||
"</div>" +
|
"</div>" +
|
||||||
'<p class="wd-klein wd-leise" style="margin:.7rem 0 0">' +
|
'<p class="wd-klein wd-leise" style="margin-top:.7rem">' +
|
||||||
"„Verbindung testen“ meldet sich probeweise bei PayPal an. " +
|
"„Verbindung testen“ meldet sich probeweise bei PayPal an. " +
|
||||||
"Es fließt dabei kein Geld — aber erst das beweist, dass die Werte stimmen.</p>" +
|
"Es fließt dabei kein Geld — aber erst das beweist, dass die Werte stimmen.</p>" +
|
||||||
"</div>";
|
"</div>";
|
||||||
@@ -2581,7 +2581,7 @@
|
|||||||
'<button type="button" class="wd-btn wd-btn--haupt wd-btn--klein" id="vw-link-kopieren">Link kopieren</button>' +
|
'<button type="button" class="wd-btn wd-btn--haupt wd-btn--klein" id="vw-link-kopieren">Link kopieren</button>' +
|
||||||
'<a class="wd-btn wd-btn--zweit wd-btn--klein" href="' + s(link) + '" target="_blank" rel="noopener">Selbst oeffnen</a>' +
|
'<a class="wd-btn wd-btn--zweit wd-btn--klein" href="' + s(link) + '" target="_blank" rel="noopener">Selbst oeffnen</a>' +
|
||||||
"</div>" +
|
"</div>" +
|
||||||
'<p class="wd-klein wd-leise" style="margin:.6rem 0 0">Gueltig 14 Tage. Danach oder bei Verlust einfach einen neuen erzeugen.</p>' +
|
'<p class="wd-klein wd-leise" style="margin-top:.6rem">Gueltig 14 Tage. Danach oder bei Verlust einfach einen neuen erzeugen.</p>' +
|
||||||
"</div>";
|
"</div>";
|
||||||
box.scrollIntoView({ behavior: "smooth", block: "center" });
|
box.scrollIntoView({ behavior: "smooth", block: "center" });
|
||||||
|
|
||||||
|
|||||||
@@ -9,8 +9,8 @@
|
|||||||
<link rel="icon" type="image/png" href="/assets/img/favicon.png" />
|
<link rel="icon" type="image/png" href="/assets/img/favicon.png" />
|
||||||
<link rel="manifest" href="/webdesign/app.webmanifest" />
|
<link rel="manifest" href="/webdesign/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#05070b" />
|
<meta name="theme-color" content="#05070b" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
</head>
|
</head>
|
||||||
<body class="wd">
|
<body class="wd">
|
||||||
<div id="wd-kopf"></div>
|
<div id="wd-kopf"></div>
|
||||||
@@ -137,8 +137,8 @@
|
|||||||
|
|
||||||
<div id="wd-fuss"></div>
|
<div id="wd-fuss"></div>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-widerruf.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-widerruf.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-widerruf.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-widerruf.js?v=20260823wd18"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -21,8 +21,8 @@
|
|||||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
||||||
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
<meta name="apple-mobile-web-app-title" content="Dogfather Webdesign" />
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/main.css?v=20260823wd18" />
|
||||||
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd17" />
|
<link rel="stylesheet" href="/assets/css/webdesign.css?v=20260823wd18" />
|
||||||
<style>
|
<style>
|
||||||
/* =====================================================================
|
/* =====================================================================
|
||||||
Zugangswand — nur hier gebraucht, deshalb bewusst NICHT in
|
Zugangswand — nur hier gebraucht, deshalb bewusst NICHT in
|
||||||
@@ -76,7 +76,7 @@
|
|||||||
stand dadurch in voller Überschriftengröße da. Deshalb hier bewusst
|
stand dadurch in voller Überschriftengröße da. Deshalb hier bewusst
|
||||||
ebenfalls zweistufig geschrieben. */
|
ebenfalls zweistufig geschrieben. */
|
||||||
.wd .zg-name { margin: 0; font-size: clamp(1.35rem, 3.2vw, 1.6rem); }
|
.wd .zg-name { margin: 0; font-size: clamp(1.35rem, 3.2vw, 1.6rem); }
|
||||||
.zg-rolle { margin: .1rem 0 0; font-size: .82rem; letter-spacing: .1em; text-transform: uppercase; font-weight: 700; color: var(--wd-blau); }
|
.zg-rolle { margin-top:.1rem; font-size: .82rem; letter-spacing: .1em; text-transform: uppercase; font-weight: 700; color: var(--wd-blau); }
|
||||||
.zg-karte--vanvan .zg-rolle { color: var(--wd-lila); }
|
.zg-karte--vanvan .zg-rolle { color: var(--wd-lila); }
|
||||||
|
|
||||||
.zg-karte .wd-feld { margin-bottom: .9rem; }
|
.zg-karte .wd-feld { margin-bottom: .9rem; }
|
||||||
@@ -94,7 +94,7 @@
|
|||||||
.zg-karte .wd-btn { margin-top: auto; }
|
.zg-karte .wd-btn { margin-top: auto; }
|
||||||
|
|
||||||
.zg-fehler {
|
.zg-fehler {
|
||||||
display: none; margin: .7rem 0 0;
|
display: none; margin-top:.7rem;
|
||||||
font-size: .92rem; font-weight: 600; color: var(--wd-fehler);
|
font-size: .92rem; font-weight: 600; color: var(--wd-fehler);
|
||||||
}
|
}
|
||||||
.zg-fehler.zg-zeige { display: block; }
|
.zg-fehler.zg-zeige { display: block; }
|
||||||
@@ -177,8 +177,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="/assets/js/i18n-wd-zugang.js?v=20260823wd17"></script>
|
<script src="/assets/js/i18n-wd-zugang.js?v=20260823wd18"></script>
|
||||||
<script src="/assets/js/wd-core.js?v=20260823wd17"></script>
|
<script src="/assets/js/wd-core.js?v=20260823wd18"></script>
|
||||||
<script>
|
<script>
|
||||||
(function () {
|
(function () {
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|||||||