@deathshadow: Designmode: window.frames['wysiwyg'+el].document.designMode = "On";
Are you unfamiliar with this? Is this ancient coding?
Ok, appears to be an IE 6 vendor specific JS property, that has somehow wormed it's way into the WhatWG's "living document" HTML5 spec, but not the actual JS specification. (... and that's why this "living document" garbage is turning into a confusing train wreck that has no business being called a specification).
Interesting, it forces contentEditable onto all elements in the document. I'm vaguely aware of contentEditable, in that it's something I'd never allow on a website in the first place.
I know css is the way to go but FONT tag code is what the browsers still seem to generate when using document.execCommand() to change Font styles.
... and there's a significant portion of WHY I'd never use that on a website... or document.execCommand for that matter; especially since the useful parts (copy and paste) are disabled by default and have to be manually enabled in a user.js file.
@deathshadow, if you would have to make a content editable cross browser WYSIWYG system, how would you do that if I may ask?
I wouldn't... they piss me off; they vomit up inaccessible buggy broken rubbish markup that has no business on any website written after 1997 -- and are a contributor what makes me BLOCK scripting on websites. I'd sooner eat a bullet; there's a reason you shouldn't use WYSIWYGs for back end design, as it's even WORSE that the whole "screwing around in a paint program like Photoshop or Fireworks and calling it web design" idiocy.
By its very nature the mere notion of a WYSIWYG for anything web related is nonsense, since HTML's job is to say what things ARE, NOT what they look like. The only thing you can be guaranteed of on the web is that "what you see is not what everyone else gets"; It's also why things like forums usually use BBCode instead of HTML.
Lands sake, when it comes to user input -- like on a forums -- if users send HTML I'd be specialchars blocking it and/or running strip_tags on it because you can't trust users to be allowed to do that; and that's pretty much industry standard practice; pretty much defeating the point of "contentEditable" or that parent "designMode" thing. That's just security 101; ALL user input is suspect. That's why bbCode EXISTS.
You also mentioned e-mails when I use the presence of HTML as one of my spam filters, since no legitimate e-mail I would expect to get has any reason to even have HTML in it! HTML-only, right to the junk folder. Multi-part alternative HTML + "Text only", show the text-only.
Maybe, MAYBE I'd allow it on the back-end of a CMS; I've used FCKEditor in the past though I've soured on it since it dropped the F and has gone all weird on us; used to be lean, mean, fast and efficient even if it did vomit up re-re markup -- now it's a bloated train wreck akin to all the other bloated manure being smeared all over websites like jQuery, Mootools, Bootcrap, etc, etc...
Of course you also mention IFRAMEs which we were told for over a decade to stop using for them being inaccessible trash and redundant to the more secure OBJECT tag, which of course is why instead of riding Microsoft's ass about their broken OBJECT implementation IFRAMES are now magically back in, less secure, as are other redundancies like EMBED suddenly allowed and all new halfwit redundancies like AUDIO and VIDEO introduced... It's why to me HTML 5 looks more like the worst of pre-STRICT coding practices and seems carefully crafted for the people who still vomit up HTML 3.2, and until recently were slapping 4 tranny on it. Now they get to wrap 5 lip-service around the same outdated inaccessible rubbish practices and call it "modern" and "the future"