"Wie geht's dir?" -- lesbar und um ein Drittel kuerzer

Filipe: "auf der seite von der kategorie wie gehts die, sind die
kacheln viel zu hell, man bekommt fast nichts gelesen, die sollen viel
kraeftiger und dunkler sein. ich will dass auch alles viel
uebersichtlicher ist, es ist alles so lang gezogen, muss ewig scrollen
um alles zu sehen."

BEIDES GEMESSEN, BEVOR ICH ETWAS ANGEFASST HABE:

  Kachelgrund   rgba(0, 0, 0, .2) -- also 80 % durchsichtig. Die Seite
                traegt ein helles Buehnenbild (Husky, Hase, viel
                Licht), und das schien mitten durch den Text.
  Laenge        2487 px am Rechner, 3431 px am Handy. 3,4 Bildschirme
                fuer neun Fragen.

DIE LESBARKEIT: Die Kacheln sind jetzt deckend -- und nicht schwarz,
sondern einen Hauch heller als die Seite, damit sich eine Frage von
der naechsten abhebt. Gemessen mit pruef-buehne: schlechtester
Kontrast 4.95:1 an 39 gemessenen Stellen (noetig 4.5).

DIE LAENGE -- gespart wurde an Weissraum und Wiederholung, NICHT an
Text. Die Erklaerung unter jeder Frage ist der Grund, warum man sie
ehrlich beantwortet.

  Vier Knoepfe, eine Reihe. Gemessen waren sie 94 von 214 Pixeln je
  Frage -- zwei Reihen, also 450 Pixel Scrollweg allein aus Umbruch.
  Gerechnet: 390 minus 28 Innenabstand minus drei Luecken, geteilt
  durch vier = 86 px je Knopf. "Kann ich nicht sagen" braucht mehr,
  "Unklar" nicht. Der LANGE Name bleibt im `aria-label` -- wer hoert
  statt sieht, bekommt weiterhin den ganzen Satz.

  Die Marke "jede Runde" steht neben der Frage statt darunter. Sie ist
  eine Eigenschaft der Frage, keine eigene Zeile.

  Zwei Spalten am Rechner. Bei 880 px Inhaltsbreite und Fragen, die
  keine 400 brauchen, halbiert das den Weg, ohne eine Frage zu
  verstecken. `break-inside: avoid` ist dabei der Kern -- sonst steht
  die Antwortreihe in der anderen Spalte.

ERGEBNIS: Rechner 2487 -> 1770 px, Handy 3431 -> 2781 px. Eine
Fragekachel am Handy 228 -> 139 px.

Und ein Fehler, den nur das Bildschirmfoto gezeigt hat: Mein erster
Anlauf sparte die Kurzform, wenn sie dem Namen gleicht -- bei "Laeuft"
ist das so. Am Handy ist die lange Fassung ausgeblendet, und der Knopf
zeigte dann nur noch das Haekchen.

Geprueft: pruef-befinden 113/0, pruef-resuemee 35/0,
pruef-entwicklung 48/0, pruef-buehne fuer diese Seite 10/0.
This commit is contained in:
2026-09-22 02:02:46 +02:00
parent bc9a902ffb
commit e4c6d69ce8
41 changed files with 718 additions and 525 deletions
+166
View File
@@ -1670,3 +1670,169 @@
.e-verteilen { flex-direction: column; align-items: stretch; }
.e-verteilen .knopf { justify-content: center; }
}
/* =====================================================================
„WIE GEHT'S DIR?" -- LESBAR UND KURZ (22.09.2026)
=====================================================================
Filipe: "auf der seite von der kategorie wie gehts die, sind die
kacheln viel zu hell, man bekommt fast nichts gelesen, die sollen
viel kraeftiger und dunkler sein. ich will dass auch alles viel
uebersichtlicher ist, es ist alles so lang gezogen, muss ewig
scrollen um alles zu sehen."
BEIDES GEMESSEN, BEVOR ICH ETWAS ANGEFASST HABE:
Kachelgrund rgba(0, 0, 0, .2) -- also 80 % durchsichtig. Die
Seite traegt ein helles Buehnenbild (ein Husky, ein
Hase, viel Licht), und das schien mitten durch den
Text. Genau das heisst "man bekommt fast nichts
gelesen".
Laenge 2487 px am Rechner, 3431 px am Handy -- 3,4
Bildschirme fuer neun Fragen.
ZUERST DIE LESBARKEIT. Die Kacheln werden deckend. Nicht schwarz:
Sie sollen sich vom Seitengrund abheben, sonst verschwimmt die eine
Frage in die naechste. `--tinte` mit einem Hauch Weiss ist genau
der Ton, den `.e-punkt` ohnehin hat -- die Variante hatte ihn nur
wieder weggenommen.
DANN DIE LAENGE. Gespart wird an Weissraum und Wiederholung, NICHT
an Text: Die Erklaerung unter jeder Frage ist der Grund, warum man
sie ehrlich beantwortet. Weg kommt die eigene Zeile fuer "JEDE
RUNDE" -- sie steht jetzt neben der Frage, wo sie ohnehin hingehoert.
===================================================================== */
/* ---- 1. DECKEND, NICHT DURCHSICHTIG ---- */
.e-punkt--meins,
.e-punkt--meine {
/* Deckend und einen Hauch heller als die Seite -- so hebt sich jede
Frage ab, ohne dass das Bild durchschlaegt. */
background: color-mix(in srgb, var(--tinte) 90%, #ffffff 10%);
border-color: color-mix(in srgb, var(--rand-hell) 70%, transparent);
}
/* Auch die Kaesten drumherum: Takt, Felder und das Fazit standen mit
demselben Problem auf demselben Bild. */
.b-takt,
.b-feld,
.b-fazit,
.e-meine {
background: color-mix(in srgb, var(--tinte) 92%, #ffffff 8%);
}
/* ---- 2. KOMPAKTER, OHNE TEXT WEGZUNEHMEN ---- */
.e-punkt--meins,
.e-punkt--meine {
margin-bottom: 7px;
padding: 11px 14px;
}
/* Die Marke neben die Frage, nicht darunter. Sie ist eine Eigenschaft
der Frage ("kommt jede Runde"), keine eigene Zeile. */
.e-punkt__kopf {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 8px;
}
.e-punkt__marke { margin-top: 0; }
/* Die Erklaerung darf enger stehen -- sie wird gelesen, nicht
ueberflogen, und 1.5 ist dafuer genug. */
.e-punkt--meins .e-punkt__text,
.e-punkt--meine .e-punkt__text {
margin: 5px 0 0;
line-height: 1.5;
}
/* Die Antwortknoepfe ruecken naeher an die Frage. 44 px bleiben sie am
Finger -- daran wird nicht gespart, das war der Fehler vom 21.09. */
.e-punkt__wahl { margin-top: 9px; gap: 7px; }
/* Die Ueberschrift eines Feldes braucht keine 30 px Luft davor, wenn
darunter gleich die erste Frage steht. */
.b-feld { margin-top: 18px; }
.b-feld__titel { margin-bottom: 2px; }
.b-feld__satz { margin: 0 0 10px; }
/* ---- 3. VIER KNOEPFE, EINE REIHE (22.09.2026) ----
---------------------------------------------------------------------
Gemessen bei 390 px: Die vier Antworten brauchten zwei Reihen, 94
von 214 Pixeln je Frage. Bei neun Fragen sind das 450 Pixel
Scrollweg, die nur aus Umbruch bestehen.
Gerechnet: 390 px minus 28 Innenabstand = 362, minus drei Luecken a
6 = 344, geteilt durch vier = 86 px je Knopf. "Kann ich nicht
sagen" braucht mehr; "Unklar" nicht. Deshalb die Kurzform -- und
nur dort, wo der Platz es verlangt.
DIE LANGE FASSUNG BLEIBT FUER DAS VORLESEPROGRAMM (aria-label am
Knopf). Wer hoert statt sieht, bekommt weiterhin den ganzen Satz. */
.e-wahl__kurz { display: none; }
@media (max-width: 560px) {
.e-wahl {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 6px;
}
.e-wahl__knopf {
justify-content: center;
gap: 4px;
padding: 6px 4px;
font-size: .74rem;
min-width: 0;
}
.e-wahl__lang { display: none; }
.e-wahl__kurz { display: inline; }
}
/* ---- 4. DIE MARKE NEBEN DIE FRAGE, NICHT DARUNTER ----
Sie ist eine Eigenschaft der Frage ("kommt jede Runde"), keine
eigene Zeile. Spart 22 px je Frage, ohne ein Wort wegzunehmen. */
.e-punkt--meins,
.e-punkt--meine {
display: grid;
grid-template-columns: auto 1fr;
align-items: baseline;
column-gap: 9px;
}
.e-punkt--meins > .e-punkt__titel,
.e-punkt--meine > .e-punkt__titel { grid-column: 1; }
.e-punkt--meins > .e-punkt__marke,
.e-punkt--meine > .e-punkt__marke { grid-column: 2; justify-self: start; }
.e-punkt--meins > *:not(.e-punkt__titel):not(.e-punkt__marke),
.e-punkt--meine > *:not(.e-punkt__titel):not(.e-punkt__marke) {
grid-column: 1 / -1;
}
/* ---- 5. ZWEI SPALTEN, WO PLATZ IST ----
Am Rechner stehen neun Fragen untereinander und fuellen zweieinhalb
Bildschirme -- bei 880 px Inhaltsbreite und Fragen, die keine 400
brauchen. Zwei Spalten halbieren den Weg, ohne eine Frage zu
verstecken.
`break-inside: avoid` ist der Kern: Ohne das reisst eine Frage
mitten im Text um, und dann steht ihre Antwortreihe in der anderen
Spalte. */
@media (min-width: 900px) {
.b-feld__liste,
#fragen {
columns: 2;
column-gap: 14px;
}
.b-feld__liste > .e-punkt,
#fragen > .e-punkt {
break-inside: avoid;
-webkit-column-break-inside: avoid;
}
}
/* Die Marke bricht nicht um -- "JEDE RUNDE" auf zwei Zeilen macht die
Kachel hoeher als die Frage daneben und sieht aus wie ein Fehler.
Der Titel darf dafuer schrumpfen; er bricht ohnehin sauber. */
.e-punkt--meins > .e-punkt__marke,
.e-punkt--meine > .e-punkt__marke { white-space: nowrap; }
.e-punkt--meins > .e-punkt__titel,
.e-punkt--meine > .e-punkt__titel { min-width: 0; }