Rich-text Formatting and Content Management

There are several content management systems available now that allow the use of advanced formating within posts, also known as rich-text Formatting. This has always driven me bonkers, since my first CMS experience with WordPress several years ago. I was a noob with this whole Web Standards methodology, and barely new a lick of CSS. Despite my lack of knowledge of these things, the mixture of rick-text formatting and a CMS environment didn’t sit right with me. Mostly because I knew it defeated some of the purpose of using a CMS in that content should be separated from markup. As I’ve been educated over time about designing for web, I’ve learned there are several reasons why rich-text formatting within a CMS is a bad idea.

Depreciated Tags and Unnecessary Markup

I’ve found that more often than not, some CMS’s tend to use depreciated tags, such as the <font> tag. Some even use <b> and <i> tags, respectively. Although these two tags are not depreciated, they do not carry any semantic meaning such as the <strong> and <em> tags. I’ve also found that several of the CMS’s that I’ve tried tend to add unnecessary markup such as extra non-breaking spaces or <br /> tags for no reason at all.

Author Has Control Over Design

For better or worse (and it’s usually for worse), Rich-text Formatting gives the author some control over the design and presentation. There’s a reason why the client hires a designer/developer to create a website. Why would we want them to be able to change fonts, sizing, and colors, among other presentation-related options.

I recently designed and built out a website for a client, and after I handed it over, he changed the font to Comic Sans on several of the pages. The font choice was bad enough in itself, but to make matters worse, the CMS made the change using <font> tags. Why would I bother taking the time to create a code-validating website, when the CMS is just going to break it. It could at least use in-line styles, which aren’t much better in my opinion. This brings me to my final point.

Separate Content from Markup

One of the major selling points for using a content management system is that it separates content from markup. This makes the maintenance of a website so much easier. This happens to also align with the Web Standards mission.

A Simple Solution

One thing that I haven’t come across yet in a CMS that would be cool, is a list of user-defined classes that could be used within a post. This way the designer could set up several styles could be used in a post, aside from the usual suspects (ie: <p>, <strong>, <blockquote>, etc.). There are two advantages to this method:

  1. The styles would be created by the designer, so they would be consistent throughout the website.
  2. The CMS would output the styles using the <span> tag or some other valid XHTML tag.

Obviously I haven’t tried all of the CMS’s out there, and I may be making a very gross generalization based on the three or four I’ve used. However, the ones I’ve tried tend to be the more popular ones that are available.

Responses

Nathan L Smith
Mar 13, 2008, 11:03 AM
permalink

While all of your points are correct, it’s a long uphill battle getting users to understand the concepts of separation of content and presentation, much less adhere to them.

Most people authoring the content on CMS’s are preachers, landscapers, hospital administrators, or something other than web designers. They shouldn’t be expected comprehend web standards any more that we should be expected to understand hermeneutics and grass seed hybrids.

Another problem: they’re cheap. They don’t like hearing that they need to pay their designer to format their content, especially when they think the CMS alleviates this need. They also want to use their favorite font: Comic Sans MS bold italic pink.

While every rich text editor I’ve tried has the symptoms you’ve described, I think they are a better solution for “regular people” than markup languages like Markdown and Textile. I like them both, but for better or worse, most people try to avoid learning new things.

One popular editor, TinyMCE, used to use <FONT>, <B>, etc., but the newest version, 3.0, is a little better. It still does insert some unneccsary <p> and <br /> tags, but at least it uses <span style=‘font-family : “Comic Sans MS”;’‘> when you change the font instead of the really bad stuff.

On TinyMCE, the Styles drop down menu can use global styles defined in the page’s stylesheet. So, if you use targeted selectors for the actual page styles and reserve the global ones for the content authors, you can define .center { text-align: center; }, and it will appear on the drop down menu. It takes some training to get people to use this, but it is a little closer to your solution. Meanwhile, those of use who write letters to their Grandma in vi can just hit the HTML button in those editors.

Daniel Marino
Mar 14, 2008, 01:03 AM
permalink

@ Nathan: You do make valid points, and I agree with you for the most part. But just as it’s the landscapers job to tell me why I should use the $50 grass seed over the $20 grass seed, it’s my job to tell the landscaper why he should spend the extra money for a better-quality website.

Commenting is closed for this article.

Current Entry

This journal entry was posted on February 21, 2008 at 06:18 AM. It is filed under Design. There are 2 comments. View the archives. Subscribe to the RSS feed.