Autor Thema: Bug: HTML - Verwirbelungen  (Gelesen 5495 mal)

Online mic@

  • Vereinsmitglied
  • Large
  • *
  • Beiträge: 6010
  • oc-only Verstecker
Bug: HTML - Verwirbelungen
« am: 03. Juli 2015, 16:23:23 »
Hallo,
ich sammle in diesem Thread mal die schrägsten HTML-Ausreisser,
also wo ein Log gleich die Umgebung durcheinanderbringt.
http://www.opencaching.de/viewcache.php?wp=OC0063&log=A#log1054413

Online Slini11

  • Vereinsmitglied
  • Normal
  • *
  • Beiträge: 1028
  • OC-Only
Re: Bug: HTML - Verwirbelungen
« Antwort #1 am: 03. Juli 2015, 16:30:36 »
Geht so ein wenig in die Richtung von http://redmine.opencaching.de/issues/83, oder ?

Offline Siggiiiiii

  • Micro
  • ***
  • Beiträge: 198
Re: Bug: HTML - Verwirbelungen
« Antwort #2 am: 03. Juli 2015, 17:01:11 »
Sowohl dieser Log als auch der nächste sehen komisch aus. Frisst der Editor echt vorformatierten Text z.B. aus Word und übernimmt das?

following

  • Gast
Re: Bug: HTML - Verwirbelungen
« Antwort #3 am: 03. Juli 2015, 17:01:32 »
Geht so ein wenig in die Richtung von http://redmine.opencaching.de/issues/83, oder ?

Jein. Ursache war ein float:left. Wenn man den rausfiltert schränkt es die Gestaltungsmöglichkeiten im Log ein. Dieser Workaround sollte genügen.

following

  • Gast
Re: Bug: HTML - Verwirbelungen
« Antwort #4 am: 03. Juli 2015, 23:19:47 »
Sowohl dieser Log als auch der nächste sehen komisch aus. Frisst der Editor echt vorformatierten Text z.B. aus Word und übernimmt das?

Solche Probleme enstehen, wenn man in den HTML-Modus schaltet und HTML-Code eingibt, mit dem niemand gerechnet hatte. Es ist schon ein HTML-Filter eingebaut, aber der ist noch nicht perfekt.

following

  • Gast
Re: Bug: HTML - Verwirbelungen
« Antwort #5 am: 05. Juli 2015, 14:43:48 »
Hier ist auch noch einer:

http://www.opencaching.de/viewcache.php?cacheid=149492&log=A#log843688

Mag sich mal jemand anders an einem Workaround versuchen?

Offline Siggiiiiii

  • Micro
  • ***
  • Beiträge: 198
Re: Bug: HTML - Verwirbelungen
« Antwort #6 am: 05. Juli 2015, 16:15:27 »
Hier ist auch noch einer:

http://www.opencaching.de/viewcache.php?cacheid=149492&log=A#log843688

Mag sich mal jemand anders an einem Workaround versuchen?

Bei beiden Logs stehen im HTML-Code styles, die man scheinbar in den Editor nicht ohne weiteres reinbekommt. Ich habe Logkopien von GC nach OC mit IE nach IE und FF nach FF und IE nach FF getestet. Entweder übernimmt der Editor nur Basistags wie <em> oder <p> oder bei etwas umfangreicheren Markierungen auch die css-Klassen. Aber die Styles wurden nicht kopiert. Auch nach dem Abspeichern steht davon nichts im HTML-Quellcode.

Die css-Klassen in den wirren OC logs sind die von GC verwendeten Klassen: class="LogsTable NoBottomSpacing" class="log-row" class="FloatLeft LogDisplayRight" class="Clear LogContent" class="LogText".

Ich habe mal beim Black-Jack-Team gefragt wegen http://www.opencaching.de/viewcache.php?wp=OC0063&log=A#log1054413. Es wurde nur per Katze&Paste kopiert und im Editor wurde nur z.B. <p> übernommen. Also quasi wie bei meinen Tests.

Ich habe über Tante Google die Klassen auch im Quellcode der Testsourcen von c:geo entdeckt. Ich hatte den Verdacht, dass eine App die Logs ala GC formatiert und über die Schnittstelle nach OC schickt, aber das widespricht sich mit der Info vom Black-Jack-Team.

Jetzt frage ich mich, wo kommen die langen style-Schwänze her?

following

  • Gast
Re: Bug: HTML - Verwirbelungen
« Antwort #7 am: 05. Juli 2015, 16:22:27 »
Wo das herkommt ist wenig relevant, darauf haben wir keinen Einfluss. Die Frage ist, was man im OC-HTML-Code drumherum bauen kann, damit es nicht mehr aus dem Rahmen rausfließt - so wie bei dem anderen Fall oben.
« Letzte Änderung: 05. Juli 2015, 16:24:58 von following »

Offline Siggiiiiii

  • Micro
  • ***
  • Beiträge: 198
Re: Bug: HTML - Verwirbelungen
« Antwort #8 am: 05. Juli 2015, 16:34:50 »
Und dem HTML-Purifier sagen: "Hau alles CSS weg, wir formatieren den Output selber." wäre zu radikal, oder?

Offline dl6hbo

  • Normal
  • *****
  • Beiträge: 1682
  • - verstorben -
Re: Bug: HTML - Verwirbelungen
« Antwort #9 am: 05. Juli 2015, 16:37:32 »
Haben wir nicht einen "HTML-Purifier" in unserer Software ?   Ich erinnere dunkel, dass es darum Diskussionen gab.
Wenn der "zuschlägt" und auf etwas trifft, was zu der Zeit, als er geschrieben wurde, noch nicht einmal angedacht war, könnte leicht Unsinn oder eine fehlerhafte Formatierung dabei herauskommen.

Im Übrigen sahen die Logs zu obigem Link bei mir jetzt gut aus.
Gruß, Rainer ( dl6hbo )
Everything should be made as simple as possible, but not simpler.
Albert Einstein

Offline Siggiiiiii

  • Micro
  • ***
  • Beiträge: 198
Re: Bug: HTML - Verwirbelungen
« Antwort #10 am: 05. Juli 2015, 16:47:12 »
Im Übrigen sahen die Logs zu obigem Link bei mir jetzt gut aus.

Da wurde ja jetzt was eingebaut. :)

Online mic@

  • Vereinsmitglied
  • Large
  • *
  • Beiträge: 6010
  • oc-only Verstecker
Re: Bug: HTML - Verwirbelungen
« Antwort #11 am: 05. Juli 2015, 17:00:01 »
Zitat von: following
Die Frage ist, was man im OC-HTML-Code drumherum bauen kann, damit es nicht mehr aus dem Rahmen rausfließt - so wie bei dem anderen Fall oben.

Was wäre, wenn man einfach ALLE möglichen Tags schliesst. Ist zwar absolut bescheuerter HTML-Code,
wenn man etwas schliesst, was nicht offen ist. Aber ich glaube, HTML verkraftet das...

Offline bohrsty

  • Administrator
  • Normal
  • *****
  • Beiträge: 1313
  • Teamleiter Technik
Re: Bug: HTML - Verwirbelungen
« Antwort #12 am: 05. Juli 2015, 17:00:32 »
Wo das herkommt ist wenig relevant, darauf haben wir keinen Einfluss. Die Frage ist, was man im OC-HTML-Code drumherum bauen kann, damit es nicht mehr aus dem Rahmen rausfließt - so wie bei dem anderen Fall oben.

in diesem fall bleiben meine ich nur zwei radikalloesungen:
overflow-x: hiddenwas den inhalt komplett abschneidet und unlesbar macht, oder
overflow-x: auto
wobei ich eher zur zweiten variante tendiere, denn dann wird der browser (falls, wie in diesem fall noetig) scrollbalken anbieten und sonst alles lassen wie es ist...

das verhindert zwar nicht, dass es an diesen stellen bei so einer html-eingabe etwas doof aussieht, wenn man scrollen muss, aber ich finde es besser als solch einen "auswuchs" wie jetzt...
gruss Nils (bohrsty)


Offline Siggiiiiii

  • Micro
  • ***
  • Beiträge: 198
Re: Bug: HTML - Verwirbelungen
« Antwort #13 am: 05. Juli 2015, 17:09:44 »
Haben wir nicht einen "HTML-Purifier" in unserer Software ?   Ich erinnere dunkel, dass es darum Diskussionen gab.
Wenn der "zuschlägt" und auf etwas trifft, was zu der Zeit, als er geschrieben wurde, noch nicht einmal angedacht war, könnte leicht Unsinn oder eine fehlerhafte Formatierung dabei herauskommen.

Ich denke da eher in die Richtung (wenn ich die Funktionsweise richtig verstanden habe):

Mit $config->set('CSS.AllowedProperties', array()); alle CSS Properties rauswerfen. Dann sind die styles weg. Genauer, htmlpurifier wirft alles raus, was er kennt. Man müsste dann auch nicht dauernd den purifier updaten und Neuerfindungen nachkonfigurieren, weil man ihm sagt: Hau alles weg, was Du kennst. Bleibt ein minimales Restrisiko.

Dann bleiben class, p, br etc, also die HTML Sachen im Quellcode übrig.
Da man die fremden Klassen auch nicht braucht, könnte man über HTML.Allowed nur noch die Elemente erlauben, die auch der Editor erlaubt.
Und wenn man den nutzt erhält man scheinbar nur Standardsachen wie <p>, <br>, <b>, usw. Das ist HTML 1.0. Gab es vor 20 Jahren schon.

Damit würde man dann auch der Schnittstelle verbieten, irgendwelchen CSS-Code einzuschleusen, denn Inline CSS wie in den angegebenen Fällen in den Logs gefunden, überschreibt den CSS Code von opencaching.de.

Es gibt dazu auch eine Online-Demo:
http://htmlpurifier.org/demo.php

Hier mal das Zeug aus dem Log einfügen:
<p><table class="LogsTable NoBottomSpacing" style="font-weight:inherit;font-style:inherit;font-size:12px;font-family:inherit;vertical-align:middle;border-collapse:collapse;table-layout:fixed;background-color:#ffffff;width:950px;padding:0px;margin:0px;"><tbody style="font-weight:inherit;font-style:inherit;font-size:12px;font-family:inherit;vertical-align:baseline;padding:0px;margin:0px;"><tr class="log-row" style="font-weight:inherit;font-style:inherit;font-size:12px;font-family:inherit;vertical-align:baseline;padding:0px;margin:0px;"><td style="padding-top:4px;padding-right:10px;padding-bottom:4px;padding-left:5px;font-weight:normal;font-style:inherit;font-size:12px;font-family:inherit;vertical-align:middle;border-top-width:1px;border-top-style:solid;border-top-color:#d7d7d7;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#d7d7d7;width:935px;margin:0px;">
<div class="FloatLeft LogDisplayRight" style="padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:1em;font-weight:inherit;font-style:inherit;font-size:12px;font-family:inherit;vertical-align:baseline;width:790px;margin:0px;">
<div class="Clear LogContent" style="padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:1em;font-weight:inherit;font-style:inherit;font-size:12px;font-family:inherit;vertical-align:baseline;clear:both;border-left-width:1px;border-left-style:solid;border-left-color:#d7d7d7;margin:0px;">
<p class="LogText" style="padding-top:.5em;padding-right:0px;padding-bottom:0px;padding-left:0px;font-weight:inherit;font-style:inherit;font-size:12px;font-family:inherit;vertical-align:baseline;margin:0px;">Dieser Cache stand schon lange auf unserer Liste, hatten wir doch fleissig unsere acht Bücher umsortiert und die Möglichkeiten mitgezählt. Nun wollten wir wissen, ob wir uns auch nicht verzählt hatten. Es war alles im grünen Bereich und zur Belohnung gab es einen schönen Spaziergang durch den regenfeuchten Wald. <br />TFTC</p>
</div>
</div>
</td>
</tr></tbody></table></p>

Dann einen Haken bei AllowedPropeties rausnehmen und Felt leer lassen.
Dann bei HTML.Allowed Haken rausnehmen und p,b,br,ol,ul,i,em eintragen.
« Letzte Änderung: 05. Juli 2015, 17:14:51 von Siggiiiiii »

Online mic@

  • Vereinsmitglied
  • Large
  • *
  • Beiträge: 6010
  • oc-only Verstecker
Re: Bug: HTML - Verwirbelungen
« Antwort #14 am: 27. August 2015, 10:04:14 »
Und hier wieder ein paar Listings, die unsere Webseite ordentlich durcheinanderwirbeln:

http://www.opencaching.de/viewcache.php?cacheid=121550
http://www.opencaching.de/viewcache.php?cacheid=121549