Chat: die Schreibzeile auf dem Handy -- Feld 130 -> 278 px
Filipe schreibt vom Handy. In der Schreibzeile stehen seit heute Nacht
SECHS Dinge: Bueroklammer, Mikrofon, GIF, Emoji, Schreibfeld, Senden --
das Mikrofon und das GIF habe ich selbst dazugestellt.
GEMESSEN, BEVOR ICH ETWAS ANGEFASST HABE (mit echtem Finger, weil
`pointer: coarse` sonst gar nicht greift):
320 px Feld 164
390 px Feld 130 -- und "Senden" ALLEIN auf einer eigenen Zeile
412 px Feld 151 -- dito
Das Feld lag auf seiner Untergrenze von 8 rem. Kaputt war nichts --
nichts ueberlappte, nichts war zu klein --, aber man sah beim Tippen
etwa zwoelf Zeichen, und der Knopf, der die Nachricht wegschickt, war
weiter vom Text entfernt als die Bueroklammer.
Das ist derselbe Fehler wie am 06.09.2026 in anderer Gestalt: Damals
kam ein sechstes Element in die Kopfleiste, und bei 412 px lag ein
Knopf ueber dem anderen.
ZWEI GRUPPEN STATT SECHS EINZELTEILE
------------------------------------
chat__werkzeuge Bueroklammer, Mikrofon, GIF, Emoji
chat__schreibzeile Feld und Senden
Damit bricht die Zeile an der richtigen Stelle: Die Werkzeuge wandern
GEMEINSAM nach oben, Feld und Senden bleiben zusammen. Und ein siebtes
Werkzeug laesst kuenftig die Gruppe wachsen, nicht das Feld schrumpfen
-- das ist der Unterschied zwischen einer Regel und einer Zahl, die man
beim naechsten Knopf neu suchen muss.
DER EMOJI-KNOPF IST ZU DEN WERKZEUGEN GEWANDERT. Er sass neben
"Senden", und auf dem Handy landeten damit Emoji und Senden gemeinsam
unten links. Ein Emoji ist dasselbe wie eine Bueroklammer: etwas, das
man in den Text einfuegt. Senden ist das Gegenteil.
NACHHER:
320 px Feld 214 390 px Feld 278
412 px Feld 299 1280 px Feld 560
Auf dem Handy drei Zeilen (Werkzeuge / F K U S / Feld+Senden), am
Rechner alles nebeneinander.
DIE 10 rem SIND GEMESSEN, NICHT GESCHAETZT
------------------------------------------
Durchgespielt wurden 8, 10, 11, 12 und 13 rem auf 320, 390 und 412 px.
Ab 11 rem kommt auf 320 px eine VIERTE Zeile dazu -- also schlechter
dort, wo der Platz ohnehin am knappsten ist. 10 rem verbessert 390 und
412 deutlich, ohne 320 zu verschlechtern. Die Messreihe steht im
Kommentar; wer daran dreht, misst bitte wieder nach.
EIN ZWISCHENSTAND, DEN ICH VERWORFEN HABE
-----------------------------------------
Der erste Versuch gruppierte nur Feld+Senden und liess Emoji stehen.
Gemessen: Feld 160 statt 180 -- schlechter als der Zustand davor. Ich
habe ihn zurueckgenommen, statt ihn schoenzureden. Was ich nicht
messen kann, liefere ich nicht aus.
GEPRUEFT
--------
pruef-chat-optik: die Schreibzeile ist jetzt Teil der Pruefung.
Breite des Feldes, Senden neben dem Feld, nichts ueberlappt, alles am
Daumen treffbar, kein Querscrollen -- und am Rechner das Gegenteil:
Dort MUESSEN die Werkzeuge daneben stehen, sonst waere die Zeile
unnoetig hoch.
GEGENPROBE mit der alten Fassung: 5 Zeilen werden rot, darunter genau
die beiden Symptome von oben (Feld 130, Senden eine Zeile tiefer).
UND ZWEI EIGENE FEHLER IN DER PRUEFUNG, BEIDE VON DER GEGENPROBE
GEFUNDEN:
* Sie mass mit einem SCOUT -- und der bekommt Mikrofon und GIF gar
nicht zu sehen. Gemessen wurde eine Zeile mit zwei Dingen darin,
waehrend der gefaehrliche Fall der mit vier ist. Aufgefallen, weil
die Gegenprobe 178 px meldete und meine Handmessung 130: zwei
Zahlen fuer dieselbe Sache.
* Eine Zeile war gruen mit `undefined`: Es gab die Gruppe nicht,
`y` war undefiniert, und `(undefined || 0) < 834` ist wahr. Ein
gruener Haken, der nichts angesehen hat -- genau die Sorte, vor
der die Hausregeln warnen.
pruef-chat, pruef-erwaehnung (119), pruef-chat-anhaenge (109):
unveraendert gruen.
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
+77
-22
@@ -12,26 +12,26 @@
|
||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||
eine Flaeche sind statt zweier. -->
|
||||
<meta name="theme-color" content="#06090f" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609231131" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609231131" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609231131" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609231131" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609231200" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609231200" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609231200" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609231200" />
|
||||
<!-- aufgaben.css bringt die Dialog- und Formularstile mit (.dialog,
|
||||
.neu__zeile, .dialog__knoepfe). Sie stehen dort seit dem
|
||||
Aufgabenbrett; sie hierher zu kopieren hiesse, sie an zwei Stellen
|
||||
zu pflegen. Dieselbe Lösung nutzen kalender.html und content.html.
|
||||
Gemeldet von pruef-css-klassen.mjs, bevor jemand einen ungestylten
|
||||
Dialog zu sehen bekam. -->
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609231131" />
|
||||
<link rel="stylesheet" href="assets/css/chat.css?v=202609231131" />
|
||||
<link rel="stylesheet" href="assets/css/module.css?v=202609231131" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609231200" />
|
||||
<link rel="stylesheet" href="assets/css/chat.css?v=202609231200" />
|
||||
<link rel="stylesheet" href="assets/css/module.css?v=202609231200" />
|
||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||
<link rel="stylesheet" href="assets/css/haus.css?v=202609231131" />
|
||||
<link rel="stylesheet" href="assets/css/haus.css?v=202609231200" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -320,6 +320,26 @@
|
||||
Das Feld selbst bleibt unsichtbar -- ein Datei-Auswahlfeld
|
||||
sieht in jedem Browser anders aus und lässt sich nicht
|
||||
gestalten. Bedient wird es über die Büroklammer daneben. -->
|
||||
<!-- DIE DREI WERKZEUGE SIND EINE GRUPPE (23.09.2026)
|
||||
---------------------------------------------------------
|
||||
Sie standen einzeln in der Zeile. Solange es zwei waren,
|
||||
ging die Rechnung auf; seit heute Nacht sind es drei
|
||||
(Büroklammer, Mikrofon, GIF), und gemessen auf 390 px
|
||||
blieben dem Schreibfeld noch 130 Pixel — seine
|
||||
Untergrenze. „Senden" rutschte allein auf eine eigene
|
||||
Zeile darunter.
|
||||
|
||||
Das ist genau der Fehler vom 06.09.2026 in anderer
|
||||
Gestalt: Damals kam ein sechstes Element in die
|
||||
Kopfleiste, und ein Knopf landete über dem anderen.
|
||||
|
||||
ALS GRUPPE bricht die Zeile an der richtigen Stelle: Die
|
||||
drei wandern GEMEINSAM nach oben, und Feld, Emoji und
|
||||
Senden bleiben zusammen. Kommt morgen ein viertes
|
||||
Werkzeug dazu, wächst die Gruppe — das Schreibfeld nicht
|
||||
kleiner. Das ist der Unterschied zwischen einer Regel und
|
||||
einer Zahl, die man beim nächsten Knopf neu suchen muss. -->
|
||||
<div class="chat__werkzeuge">
|
||||
<input type="file" id="anhang-feld" class="chat__anhang-feld"
|
||||
accept="image/png,image/jpeg,image/webp,image/gif,application/pdf"
|
||||
tabindex="-1" aria-hidden="true" />
|
||||
@@ -372,6 +392,21 @@
|
||||
aria-label="GIF schicken" title="GIF schicken">GIF</button>
|
||||
<input type="file" id="gif-feld" class="chat__anhang-feld"
|
||||
accept="image/gif" tabindex="-1" aria-hidden="true" />
|
||||
<!-- EMOJI-AUSWAHL (09.09.2026). Die Bildschirmtastatur am Handy
|
||||
hat sie ohnehin -- am Rechner nicht, und dort schreibt die
|
||||
Betreuung. Dreissig feste Zeichen statt einer nachgeladenen
|
||||
Tafel: Das deckt den Alltag ab und lädt nichts.
|
||||
|
||||
STEHT SEIT DEM 23.09.2026 BEI DEN WERKZEUGEN. Vorher saß
|
||||
er neben „Senden" — und auf dem Handy landeten damit
|
||||
Emoji und Senden gemeinsam auf einer eigenen Zeile unten
|
||||
links, weit weg vom Schreibfeld. Ein Emoji ist dasselbe
|
||||
wie eine Büroklammer: etwas, das man in den Text
|
||||
einfügt. Der Senden-Knopf ist das Gegenteil. -->
|
||||
<button type="button" class="chat__emoji" id="emoji-auf"
|
||||
aria-expanded="false" aria-controls="emoji-tafel"
|
||||
aria-label="Emoji einfügen" title="Emoji einfügen">☺</button>
|
||||
</div><!-- /chat__werkzeuge -->
|
||||
<div class="gif-tafel" id="gif-tafel" hidden role="group"
|
||||
aria-label="GIF aus der Kiste schicken">
|
||||
<div class="gif-tafel__kopf">
|
||||
@@ -388,6 +423,28 @@
|
||||
Team sehen es dann auch.
|
||||
</p>
|
||||
</div>
|
||||
<!-- SCHREIBEN UND ABSCHICKEN GEHÖREN ZUSAMMEN (23.09.2026)
|
||||
---------------------------------------------------------
|
||||
Gemessen auf 390 px: Das Feld stand bei den Werkzeugen,
|
||||
der Senden-Pfeil eine Zeile tiefer unten links. Man
|
||||
schreibt rechts und drückt links unten — und der Knopf,
|
||||
der die Nachricht wegschickt, war weiter vom Text
|
||||
entfernt als die Büroklammer.
|
||||
|
||||
Als Gruppe bleiben Feld und Senden beieinander, egal wo
|
||||
die Zeile umbricht, und das Feld bekommt die ganze
|
||||
Restbreite statt eines Rests.
|
||||
|
||||
`flex-wrap: wrap` INNEN: Die Gestaltungsleiste (F K U S)
|
||||
hängt sich beim Laden vor das Textfeld und wandert damit
|
||||
in diese Gruppe. Ohne Umbruch würde sie sich hier in die
|
||||
Zeile quetschen; mit ihm nimmt sie ihre eigene und alles
|
||||
bleibt, wo es hingehört.
|
||||
|
||||
DIE TAFELN BLEIBEN DRAUSSEN (Emoji, Erwähnen, GIF): Sie
|
||||
sind absolut gesetzt und brauchen `.chat__eingabe` als
|
||||
Bezugspunkt. -->
|
||||
<div class="chat__schreibzeile">
|
||||
<textarea id="text" rows="1" maxlength="4000"
|
||||
placeholder="Nachricht schreiben …"
|
||||
title="Enter schickt ab, Umschalt+Enter macht eine neue Zeile, @ erwähnt jemanden"></textarea>
|
||||
@@ -395,9 +452,6 @@
|
||||
hat sie ohnehin -- am Rechner nicht, und dort schreibt die
|
||||
Betreuung. Dreissig feste Zeichen statt einer nachgeladenen
|
||||
Tafel: Das deckt den Alltag ab und laedt nichts. -->
|
||||
<button type="button" class="chat__emoji" id="emoji-auf"
|
||||
aria-expanded="false" aria-controls="emoji-tafel"
|
||||
aria-label="Emoji einfügen" title="Emoji einfügen">☺</button>
|
||||
<div class="emoji-tafel" id="emoji-tafel" role="group"
|
||||
aria-label="Emoji auswählen" hidden></div>
|
||||
<!-- WER IST GEMEINT? (20.09.2026)
|
||||
@@ -418,6 +472,7 @@
|
||||
<path d="M4 12l16-7-7 16-2.5-6.5z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div><!-- /chat__schreibzeile -->
|
||||
</form>
|
||||
<p class="fehler" id="fehler" role="alert" aria-live="polite"></p>
|
||||
</section>
|
||||
@@ -496,25 +551,25 @@
|
||||
</form>
|
||||
</dialog>
|
||||
|
||||
<script src="assets/js/bereiche.js?v=202609231131"></script>
|
||||
<script src="assets/js/bereiche.js?v=202609231200"></script>
|
||||
<!-- TEXTFORM VOR ALLEM ANDEREN (21.09.2026): chat.js und bereich.js
|
||||
fragen beim Zeichnen nach `window.Textform`. Kaeme sie spaeter,
|
||||
waere die erste gezeichnete Nachricht ohne Gestaltung -- und das
|
||||
faellt nur dem auf, der genau hinsieht. KEIN `defer`, damit sie
|
||||
wirklich vor den anderen dasteht. -->
|
||||
<script src="assets/js/textform.js?v=202609231131"></script>
|
||||
<script src="assets/js/meldung.js?v=202609231131" defer></script>
|
||||
<script src="assets/js/hochladen.js?v=202609231131" defer></script>
|
||||
<script src="assets/js/nachfrage.js?v=202609231131" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609231131" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609231131"></script>
|
||||
<script src="assets/js/glocke.js?v=202609231131"></script>
|
||||
<script src="assets/js/textform.js?v=202609231200"></script>
|
||||
<script src="assets/js/meldung.js?v=202609231200" defer></script>
|
||||
<script src="assets/js/hochladen.js?v=202609231200" defer></script>
|
||||
<script src="assets/js/nachfrage.js?v=202609231200" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609231200" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609231200"></script>
|
||||
<script src="assets/js/glocke.js?v=202609231200"></script>
|
||||
<!-- ANRUF VOR CHAT (18.09.2026): anruf.js stellt `window.anrufStarten`
|
||||
bereit, und chat.js baut die Knoepfe nur, wenn es das gibt.
|
||||
Andersherum waere die Reihenfolge eine stille Abhaengigkeit --
|
||||
die Knoepfe fehlten, und niemand wuesste warum. -->
|
||||
<script src="assets/js/anruf.js?v=202609231131"></script>
|
||||
<script src="assets/js/chat.js?v=202609231131"></script>
|
||||
<script src="assets/js/installieren.js?v=202609231131" defer></script>
|
||||
<script src="assets/js/anruf.js?v=202609231200"></script>
|
||||
<script src="assets/js/chat.js?v=202609231200"></script>
|
||||
<script src="assets/js/installieren.js?v=202609231200" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user