Hallo, für mich ist noch alles neu.
Ich geben Messwerte über einen HTML-String am Webserver aus. Um den Text besser formatiert darzustellen, sollen die Werte in Tabellenform dargestellt werden. Hier ein Auszug aus dem Scatch:
Nun die ganz banale Frage:
Wie füge ich hier colspan="2" ein,
um im Header 2 Zellen zusammenzufassen?
Wie füge ich noch eine weitere Eigenschaft wie Schriftfarbe ein?
Wie ist die Syntax bei ptr +=
Ich würde Dir empfehlen, den HTML-Code erst mal in einer test.html zu schreiben. Dann kannst Du im Browser gleich austesten, ob es so aussieht, wie Du Dir das vorstellst. Die Werte kannst Du ja erst mal als Text einsetzen.
Literatur zu HTML: Selfhtml und/oder w3schools
3mal überlegen ob eine Tabelle richtig ist.
(edit: eine Werte Reihe + Größenangabe ist keine Tabelle!)
"Formatieren" sollte mit sauberen css eigentlich auch funktionieren.
Arduino verwendet "Sketch" für ihre Programme
Ansonsten wie schon geschrieben, mach erst mal ein lokales test.html,
dann evtl. noch in einem Validator überprüfen: https://validator.w3.org/ und erst wenn du einen saubern html code hast, machst deinen Arduino Sketch.
Danke für den Hinweis. Aber Tabelle ist ganz OK. Mir geht es jetzt erst mal um Grundlagenwissen zur Syntax.
Beim Aufteilen des Codes funktioniert es aber nicht mehr.
Was ist hier falsch?
HTML ist klar. Der Code oben funktioniert ja. Ich möchte diesen aber aufteilen, dass ich einfach noch mehr Formatierungen wie Farbe einfügen kann. Nur was bringt mir das Plain-HTML (Tabelle 3 Zeilen, 2 Spalten), wenn ich dies nicht in dieses Ptr += Format (String-Format) umgesetzt bekomme. Zu diesem String-Format finde ich keine Syntaxbeschreibung also eine Beschreibung wie man HTML in dieses String-Format mit Ptr+= umsetzt
Plain HTML kannst in einem Validator überprüfen und so richtiges HTML erstellen.
Nur weils in deinem Browser dargestellt wird, heißt noch lange nicht, dass das korrektes HTML ist.
Und ein ganzes HTML aufteilen ist doch übersichtlich:
Einmal ist das Fixtext - und vor den Variablen Teilen musst du nun unterbrechen und ein neues ptr += setzen ... sorry - das ist doch nur Tipparbeit.
Langes HTML
Anführungszeichen Anführungszeichen setzen
Zeilenschaltung zwischen den zwei neuen Anführungszeichen setzen
;
ptr+= variable;
Zeilenschaltung
dafür den Demo-Text löschen
und dann noch mal ein ptr += vor dem zweiten oben eingefügten Anführungszeichen setzen wo wieder fortgesetzt wird.
dann einmal auf den ESP hochladen,
html einmal vom ESP generieren lassen - noch mal im Validator überprüfen ob eh alles richtig umgesetzt wurde.
@knoxville
nur als Vorschlag: kopiere das HTML in dem von mir oben verlinkten Validator und lass dir Zeilenweise ausgeben was alles falsch ist. wird. Das Ding zeigt dir jede einzelne Zeile die nicht valide ist! Und vielen Fällen auch ziemlich genau WAS nicht stimmt.
De facto hast du jetzt eine einspaltige Tabelle, warum du dann ein colspan 4 glaubst zu brauchen, das ist schon fast witzig.
Auf die falschen ; hat man dich bereits mehrmals hingewiesen.
wenn du span aufmachst, musst du es auch wieder zu machen.
immer noch ein Schmarren, aber das validiert wenigstens:
<!DOCTYPE html>
<html lang='de'>
<head>
<title>foo</title>
</head>
<body>
<table>
<tr>
<th colspan='1'> <!-- ausgebessert, strichpunkt entfernt, colspan kann ganz weg -->
foo
</th>
</tr>
<tr>
<td colspan='1'> <!-- ausgebessert, strichpunkt entfernt, colspan kann ganz weg -->
<span style='color:red;'>
blabla
</span> <!-- ergänzt-->
<span style='color:black;'>
°C
</span> <!-- ergänzt-->
</td>
</tr>
<tr> <!-- ergänzt-->
<td colspan='1'> <!-- ausgebessert, strichpunkt entfernt, colspan kann ganz weg -->
<span style='color:orange;'>
bar
</span>
<span style='color:black;'>
°C
</span> <!-- ergänzt-->
</td>
</tr>
<tr>
<td colspan='1'> <!-- ausgebessert, strichpunkt entfernt, colspan kann ganz weg -->
<span style='color:blue;'>
foo
</span> <!-- ergänzt-->
<span style='color:black;'>
°C
</span> <!-- ergänzt-->
</td>
</tr>
</table>
</body>
</html>
ja aber genauso funktioniert es mit ";" und wird auf meinen Geräten richtig angezeigt (Handy, Tablet Browser). Mehr wollte ich nicht. Colespan kommt weiter oben in der Tabelle zum Einsatz.
In dieser String-Syntax wird es nur so angenommen.