=== 1. BILDER OEFFNEN SICH MITTIG, MIT HUSKY UND HASE ===
Filipe: "wenn man bilder aufmacht, will ich dass die in der mitte sind.
beim hochformat soll links der husky sein und rechts der hase und beim
querformat soll oben dogfather und unten team dogi stehen da wo platz
ist ... ich will nicht dahin geschmissen sondern was richtig geiles mit
einem geilen hintergrund."
WAS VORHER PASSIERTE, und es war kein Fehler im Code: Der Klick fuehrte
auf die DATEI. Was man dann sah, war die eingebaute Bildanzeige des
Browsers -- schwarzer Grund, Bild oben links in der Ecke, auf seinem
Bildschirmfoto 1200 px Schwarz daneben. Eine Datei hat keine
Gestaltung. Wer Gestaltung will, muss eine SEITE zeigen.
Die Schau liegt jetzt UEBER dem Chat. Escape bringt einen dorthin
zurueck, wo man war, und das Gespraech laeuft im Hintergrund weiter --
ein zweiter Tab braeuchte eine eigene Seite, eine eigene Anmeldung und
einen eigenen Weg zurueck.
DER WEG IN DEN TAB BLEIBT TROTZDEM. Der Verweis hat unveraendert
`href`, `target` und `rel`; mittlere Maustaste, "In neuem Tab oeffnen"
und Herunterladen gehen wie seit jeher. Abgefangen wird nur der
gewoehnliche Klick -- und auch der nur, wenn die Schau geladen ist.
Wer Strg, Umschalt oder Befehl haelt, bekommt den alten Weg; das sind
die Griffe, die Leute seit zwanzig Jahren benutzen.
DIE BEGLEITER STEHEN DA, WO PLATZ IST -- und die Antwort darauf wird
GEMESSEN, nicht geschaetzt: nicht die Fensterbreite, sondern der Rest
neben dem Bild, nachdem es eingepasst ist. Eine Schwelle wie "ab
1100 px" waere fuer ein 3:4-Foto richtig und fuer ein 9:16-Foto auf
demselben Schirm falsch. Unter 170 px bleibt der Husky weg: Eine Figur,
die ein Streifen ist, steht besser nicht da.
Husky und Hase sind eigens verkleinert (2,1 MB und 1,0 MB werden 40 kB
und 32 kB) und bekommen weiche Raender -- ihr Hintergrund ist dunkel,
aber nicht durchsichtig; als Rechteck saehe man zwei Kaesten.
Der erste Anlauf spiegelte den Hasen, damit beide "nach innen" schauen
-- ein alter Reflex aus dem Plakatsatz. Auf dem Probebild stand danach
"Hasi Dog" seitenverkehrt auf seinem Hoodie. Schrift im Bild spiegelt
man nie.
pruef-chat-anhaenge bekommt 14 neue Punkte, darunter beide Formate und
zwei Gegenproben: Strg+Klick oeffnet die Schau NICHT (sonst hiesse "sie
geht auf" nur, dass der alte Weg verloren ist), und im Hochformat liegt
KEINE der Figuren ueber dem Foto.
NEBENBEFUND, den die Pruefung gefunden hat: Die Sprachnachricht war auf
165 px geschrumpft -- zu schmal fuer den Schieber. Ursache war keine
Aenderung an ihr, sondern eine Folge: Die Blase ist so breit wie ihr
breitester Inhalt, und seit die Handgriffe darunter Zeichen statt
Woerter sind (123 statt ueber 400 px), bestimmt das Abspielgeraet die
Breite selbst. Eine Reihe kuerzer zu machen hat einen Schieber schmaler
gemacht, drei Bildschirme weiter.
=== 2. DER FARBKREIS: HELLER UND DUNKLER ===
Filipe: "dieser kreis muss viel perfekter sein. ich will dass die leute
auch heller und dunkler aussuchen koennen ... so dass die leute viel
krassere moeglichkeiten haben."
WARUM DAS BIS HEUTE NICHT GING: Die 360 Toene liegen alle auf DERSELBEN
Leuchtdichte. Das war kein Zufall -- solange die Blase in der gewaehlten
Farbe stand, musste jede dieser Flaechen dieselbe Schrift tragen. Eine
hellere Farbe zuzulassen hiesse damals: irgendwo wird eine Nachricht
unlesbar.
SEIT DEM 25.09.2026 IST DIE BEDINGUNG EINE ANDERE. Die Blase ist fuer
alle dunkles Glas; der Ton ist Kante und NAME. Damit faellt die alte
Regel weg, und an ihre Stelle tritt: der Ton muss als Name auf dem
Blasengrund lesbar bleiben.
DIE ZAHLEN SIND GEMESSEN, NICHT GEWAEHLT. Ueber alle 360 Winkel, jeweils
der schlechteste Fall:
40 % schwarz 4,468 -- unter der Schwelle, faellt raus
34 % schwarz 4,555 -- ginge, aber ohne Reserve
30 % schwarz 4,619 <- die dunkelste Stufe
0 % 5,12 <- die Mitte, der alte Kreis
55 % weiss 9,6 <- die hellste Stufe
Sieben Stufen, 2520 Farben statt 360. pruef-chat-neu rechnet jede
einzelne nach -- die knappste hat 2,6 Prozent Reserve.
DIE ALTEN SCHLUESSEL BLEIBEN GUELTIG. "ton-214" heisst weiterhin genau
dieselbe Farbe; die Stufe steht als Zusatz dahinter ("ton-214-s6"). Wer
seit dem 23.09. eine Farbe traegt, traegt nach diesem Umbau dieselbe.
DIE PROBE IN DER MITTE ZEIGT ENDLICH, WAS MAN BEKOMMT. Dort stand eine
gefuellte Flaeche mit heller Schrift -- so sah die Blase bis heute frueh
aus. Jetzt steht dort derselbe Blasengrund und darauf der Ton als Name,
mit genau der Rechnung aus chat.css. Das ist nicht nur ehrlicher, es
macht die sieben Stufen erst moeglich: Eine gefuellte Flaeche muesste
Schrift tragen, und bei sehr hellen Toenen schafft das keine der beiden
Schriftfarben mehr (4,1 statt noetiger 7). Als Name auf dunklem Grund
ist derselbe helle Ton besonders gut lesbar (8,0).
Der Erklaersatz im Fenster war damit falsch geworden ("Alle Toene
leuchten gleich stark") und sagt jetzt, was stimmt.
ZWEI PRUEFUNGEN WURDEN GENAUER:
pruef-chat-neu mass den HINTERGRUND der Mitte -- eine Darstellung,
die es nicht mehr gibt. Sie misst jetzt die Schriftfarbe und rechnet
die Mischung nach. Dabei stolperte sie ueber eine dritte
Farbschreibweise: Chromium gibt `color-mix`-Ergebnisse als
`color(srgb 0.676 0.645 0.504)` zurueck. Die Zeile war rot, obwohl
die Farbe auf den Bildpunkt genau stimmte -- ein Fehlalarm, der
teurer ist als ein echter Befund, weil man am Aussehen sucht und der
Fehler im Lesegeraet liegt.
Und sie prueft nicht mehr 360, sondern 360 x 7 -- nur den Grundton zu
messen hiesse, sechs Siebtel ungeprueft auszuliefern.
Geprueft: pruef-chat-anhaenge (123), pruef-chat-neu (36),
pruef-chatkachel (40), pruef-chat, pruef-chat-ausbau (69),
pruef-chat-optik, pruef-tippziele (11), pruef-css-klassen.
Co-Authored-By: Claude Opus 5 <[email protected]>
133 lines
5.8 KiB
HTML
133 lines
5.8 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="de" data-haus="crew">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
|
||
<title>Anruf-Probe · Team Dogi</title>
|
||
<meta name="robots" content="noindex, nofollow" />
|
||
<!-- KORRIGIERT AM 19.09.2026. Hier standen `basis.css` und `kopf.css` --
|
||
zwei Dateien, die es im Haus gar nicht gibt. Die Seite lud sie bei
|
||
jedem Aufruf ins Leere und stand damit OHNE die Hausfarben da; die
|
||
Angaben darunter (var(--text-leise) usw.) liefen ins Nichts.
|
||
|
||
Ausgerechnet auf dieser Seite faellt das nicht auf: Sie hat ihre
|
||
eigene Stilangabe im Kopf, damit sie auch dann noch etwas anzeigt,
|
||
wenn die Stilvorlagen klemmen -- und genau die hat den Mangel
|
||
verdeckt. Gefunden hat es pruef-struktur.
|
||
|
||
Richtig sind `gate.css` (die Farbwerte des Hauses) und `haus.css`. -->
|
||
<link rel="stylesheet" href="assets/css/gate.css?v=202609250435" />
|
||
<link rel="stylesheet" href="assets/css/haus.css?v=202609250435" />
|
||
<!-- Ohne diese drei nimmt ein iPhone einen Bildschirmausschnitt als
|
||
Symbol, Android zeichnet die Leiste weiss, und die Seite oeffnet
|
||
ausserhalb der App -- auf einer Seite, die genau erklaeren soll,
|
||
WARUM das Telefon nicht klingelt, ist das besonders unpassend. -->
|
||
<link rel="manifest" href="/workspace/crew.webmanifest" />
|
||
<meta name="theme-color" content="#06090f" />
|
||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609250435" />
|
||
<style>
|
||
/* Bewusst in der Seite und nicht in einer eigenen Datei: Diese Seite
|
||
soll auch dann noch etwas anzeigen, wenn genau das schiefgeht,
|
||
was sie untersucht -- eine Stilvorlage, die aus dem
|
||
Zwischenspeicher kommt. */
|
||
/* DIE KOPFLEISTE WAR NIE GESTALTET (nachgetragen 19.09.2026).
|
||
|
||
Gefunden von pruef-css-klassen: `.kopfleiste`, `.kopfleiste__zurueck`,
|
||
`.kopfleiste__mitte` und `.kopfleiste__titel` stehen in KEINER
|
||
Stilvorlage des Hauses -- sie leben in start.css bzw. crew-haus.css,
|
||
und genau die lädt diese Seite absichtlich nicht.
|
||
|
||
Ergebnis war eine Leiste aus nacktem Text: der Zurück-Weg ein
|
||
blasser Link irgendwo links oben, der Titel daneben in Fließtext.
|
||
Ausgerechnet auf der Seite, die man aufruft, WEIL schon etwas nicht
|
||
funktioniert -- da sieht unfertig aus wie kaputt.
|
||
|
||
Sie stehen hier und nicht in einer Datei, aus demselben Grund wie
|
||
alles andere auf dieser Seite: Sie soll auch dann noch etwas
|
||
anzeigen, wenn genau das schiefgeht, was sie untersucht. */
|
||
.kopfleiste {
|
||
display: flex; align-items: center; gap: .6rem;
|
||
padding: .55rem .9rem;
|
||
border-bottom: 1px solid var(--rand);
|
||
background: color-mix(in srgb, var(--tinte) 92%, #ffffff 8%);
|
||
}
|
||
.kopfleiste__zurueck {
|
||
/* 44 px hoch: Das ist die Größe, die ein Daumen sicher trifft.
|
||
Auf einem Handy ist dieser Knopf der einzige Weg zurück. */
|
||
display: inline-flex; align-items: center;
|
||
min-height: 44px; padding: 0 .7rem 0 .2rem;
|
||
color: var(--text-leise); text-decoration: none;
|
||
font-size: .92rem; border-radius: .5rem;
|
||
}
|
||
.kopfleiste__zurueck:hover,
|
||
.kopfleiste__zurueck:focus-visible { color: var(--text); }
|
||
.kopfleiste__mitte { flex: 1; min-width: 0; text-align: center; }
|
||
.kopfleiste__titel {
|
||
font-size: .92rem; font-weight: 600; color: var(--text);
|
||
letter-spacing: .01em;
|
||
}
|
||
/* Gleich breit wie der Zurück-Weg, damit der Titel wirklich mittig
|
||
steht statt nur ungefähr. */
|
||
.kopfleiste__rechts { flex: 0 0 4.5rem; }
|
||
@media (max-width: 420px) {
|
||
.kopfleiste__rechts { flex-basis: 0; }
|
||
.kopfleiste__mitte { text-align: right; }
|
||
}
|
||
|
||
.probe { max-width: 46rem; margin: 0 auto; padding: 1.4rem 1rem 3rem; }
|
||
.probe h1 { margin: .2rem 0 .3rem; }
|
||
.probe__unter { color: var(--text-leise); margin: 0 0 1.4rem; }
|
||
.punkt {
|
||
display: flex; gap: .8rem; align-items: flex-start;
|
||
padding: .85rem 1rem; margin-bottom: .6rem;
|
||
border: 1px solid var(--rand); border-radius: .7rem;
|
||
background: rgba(255,255,255,.02);
|
||
}
|
||
.punkt__zeichen { font-size: 1.1rem; line-height: 1.4; flex: 0 0 1.4rem; }
|
||
.punkt__text { flex: 1; min-width: 0; }
|
||
.punkt__titel { font-weight: 600; margin: 0 0 .15rem; }
|
||
.punkt__satz { margin: 0; color: var(--text-leise); font-size: .9rem; }
|
||
.punkt[data-stand="gut"] { border-color: rgba(120, 200, 150, .4); }
|
||
.punkt[data-stand="warn"] { border-color: rgba(220, 180, 110, .45); }
|
||
.punkt[data-stand="schlecht"] { border-color: rgba(230, 140, 140, .5); }
|
||
/* 44 px auf Geraeten, die mit dem Finger bedient werden
|
||
(19.09.2026). Diese Seite laedt module.css bewusst nicht --
|
||
sie soll auch dann noch stehen, wenn Stilvorlagen klemmen.
|
||
Also gilt die Regel hier eigens. */
|
||
.probe__knopf { margin: 1.2rem 0 .4rem; }
|
||
@media (pointer: coarse) { .probe__knopf { min-height: 44px; } }
|
||
.probe__ende {
|
||
margin-top: 1.6rem; padding: 1rem;
|
||
border-radius: .7rem; border: 1px dashed var(--rand-hell);
|
||
color: var(--text-leise); font-size: .92rem;
|
||
}
|
||
</style>
|
||
</head>
|
||
<body class="haus">
|
||
<header class="kopfleiste">
|
||
<a class="kopfleiste__zurueck" id="zurueck-weg" href="start.html">‹ Zurück</a>
|
||
<div class="kopfleiste__mitte"><span class="kopfleiste__titel">Anruf-Probe</span></div>
|
||
<div class="kopfleiste__rechts"></div>
|
||
</header>
|
||
|
||
<main class="probe">
|
||
<h1>Warum klingelt es nicht?</h1>
|
||
<p class="probe__unter">
|
||
Diese Seite geht der Reihe nach durch, was ein Anruf braucht – und sagt,
|
||
an welcher Stelle es hakt. Sie ruft niemanden an.
|
||
</p>
|
||
|
||
<div id="ergebnis"></div>
|
||
|
||
<button type="button" class="knopf probe__knopf" id="ton-probe">Klingelton anhören</button>
|
||
|
||
<p class="probe__ende" id="rat"></p>
|
||
</main>
|
||
|
||
|
||
|
||
<script src="assets/js/anruf-probe.js?v=202609250435" defer></script>
|
||
<script src="assets/js/installieren.js?v=202609250435" defer></script>
|
||
</body>
|
||
</html>
|