Seite 1 von 1

Strict XHTML und execCommand

Verfasst: 14.01.2010, 16:28
von fropo
Hi Forum!

Ich experimentiere seit ein paar Tagen mit execCommand herum, was mich langsam verzweifeln lässt.
Zwar funktioniert mein WYSIWYG-Editor technisch einwandfrei; aber hinsichtlich der kompatibilität von execCommand stehe ich vor einem Problem. Dieses generiert nämlich kein Strict-valides XHTML !

Beispiel:
execCommand('fontsize',false,5) erzeugt: <font size="5"></font>

Laut Strict-Definition sind solche alten HTML-tags wie <font> garnichtmehr zugegen, da die Gestaltung ausschließlich per Stylesheets abgewickelt werden soll.
Habe dann in der Manual zu execCommand die Switches styleWidthCSS und useCSS gefunden und angewandt. Mit folgendem Ergebnis:

aus <strong> wird <span style="font-weight:bold"> und so weiter.... also funktioniert prima. Außer natürlich da wo ich es wirklich bräuchte: Bei <font>

Anstatt auch <font size="5"> zu <span style="font-size:5pt"> machen passiert genau hier nichts!!!
Weiter fällt mir auf, dass execCommand XHTML offenbar komplett ignoriert. So erzeugt InsertImage grundsätzlich <img> anstatt <img />.

Ich habe allerdings die Hoffnung, dass ich hier irgendeinen Switch oder einen kleinen Hack übersehen habe. Vielleicht hat sich ja jemand unter euch ebenfalls schonmal mit diesem Problem befasst und kam zu einer Lösung die er mit mir teilen möchte!

Ansonsten bin ich für jeden Teilnehmer dankbar!
Gruß

Verfasst:
von

Verfasst: 15.01.2010, 10:54
von Bauchladen
.NET Framework?

Verfasst: 15.01.2010, 14:21
von fropo

Re: Strict XHTML und execCommand

Verfasst: 15.01.2010, 14:38
von fw
Die Ironie-Tags setzte ich mal für dich.
fropo hat geschrieben:aus <strong> wird <span style="font- weight:bold"> und so weiter.... <Ironie>also funktioniert prima.</Ironie>

Re: Strict XHTML und execCommand

Verfasst: 15.01.2010, 15:06
von fropo
fw hat geschrieben:Die Ironie-Tags setzte ich mal für dich.
fropo hat geschrieben:aus <strong> wird <span style="font- weight:bold"> und so weiter.... <Ironie>also funktioniert prima.</Ironie>
;-)
Sollte zeigen, dass styleWidthCSS/uceCSS offenbar funktioniert bis auf dass er den <font>-tag übersieht.

habe mittlerweile auf https://www.quirksmode.org/dom/execCommand.html folgendes gefunden:
Moz/Op generate a (gulp!) <font> tag with size equal to parseInt(value). Saf creates a normal font-size CSS declaration.
damit hats sich dann wohl geklärt.

Jetzt stellt sich mir nur die Frage, wie ich das jetzt regeln kann. Kann man eigene execCommand()-Befehle erstellen? Also sowas wie:

Code: Alles auswählen

iframe_editor.execCommand&#40;span, false, &#123;style&#58; 'font-size&#58;7pt''&#125;&#41;
EDIT: mal ganz von der kompatibilität von iframe in XHTML Strict absehen aber ich hatte eh vor den Senf per CDATA einzubinden.

Verfasst: 15.01.2010, 23:46
von sandoba
Hilfreicher ist hier sicherlich der Einsatz von Editoren wie TinyMCE (https://tinymce.moxiecode.com/) oder FCKeditor (https://fckeditor.com/). Der Aufwand einen derartigen Editor (wenn vllt. auch mit geringerem Umfang) kompatibel für alle aktuellen Browser und mit XHTML-kompatiblem Output von Grund auf neu umzusetzen steht in keinem Verhältnis zum gewünschten Ergebnis (Inhalte online bearbeiten). Die Integration dieser Editoren hingegen ist mit recht überschaubarem Aufwand möglich.