Once upon a time, different Web browsers supported different forms of HTML markup or "tags." It was difficult or impossible to make a Web site look good in different browsers.
Beginning a few years ago, fortunately, browsers started adopting some common markup styles, loosely known as "Web standards." Web sites now look roughly the same in different browsers. Users said, "Yea, verily, it is good."
The same painful evolution now seems to affect "feed readers," which aggregate content published online via RSS (Really Simple Syndication). RSS readers currently render the old form of HTML tags fairly well. But these readers have almost no support for cascading style sheets (CSS), known more familiarly as "styles." My test results of the largest feed readers are shown in Table 1, below.
It's not really news that RSS readers don't yet support styles. Until a few months ago, the most popular feed readers didn't even support such basic HTML elements as "tables." This prevented RSS content from including readable rows and columns of financial figures and the like.
But now that support for elementary HTML has been achieved by RSS readers, it's time to ask what's keeping the companies behind these readers from taking the next step and adding style support. To find the answer, I attended Gnomedex 6.0, the annual gathering place for RSS aggregators and bloggers, to pin down the biggest reader makers.
Why Styles Make Content More Readable
If you don't personally write much HTML code, it might not be clear to you why support for styles is important.
In a nutshell, authors of Web content can always insert old HTML tags like <b> to make words bold and <i> to make them italic. But helping Web surfers understand more complex content requires more detailed styles -- various sizes of headlines, captions that position themselves next to images, and so forth.
It's a lot easier for publishers of Web content to define these relationships just once by including a "stylesheet." Each style can then be efficiently invoked when needed without hard-coding all of the details every time there's a caption or whatever.
CSS Level 1, the simplest form of styles, was standardized in December 1996. By 2000, such browsers as Microsoft's Internet Explorer 5 and others had almost completely implemented it.
Six years later, most RSS readers still lack support for CSS Level 1. But it wouldn't take much cooperation from aggregator makers to get Web-standard styles to work in RSS. According to the Pheed Read Spring 2006 Report (PDF version) by the blogging service Pheedo.info, only four aggregators are responsible for downloading 76 percent of RSS feeds. These are Bloglines, MyYahoo, Firefox (and other Mozilla-based products), and NewsGator Online (and its Mac software, NetNewsWire).
Firefox, in its bookmarks toolbar, displays nothing of RSS but news-feed headlines. MyYahoo, in a similar fashion, displays only the headlines and (optionally) the first few words from the article. These limited snippets will never support styled text. To read the full content of a feed, users must click the headline to visit the feed's Web site in a browser window, where good style support is provided.
By contrast, online aggregators such as Bloglines and NewsGator Online are rich environments within which users are expected to read the full text of news feeds. I concentrated my testing, therefore, on these two aggregators, which represent about 40 percent of RSS downloads. For comparison purposes, I also tested BlogExpress, a Windows application that uses the OS's built in HTML rendering engine to display feeds. BlogExpress provides excellent support for both HTML tags and CSS styles.
As shown in Table 1, neither Bloglines nor NewsGator Online currently support any styles. This is true whether the CSS is defined in a single block within the body of the feed ("embedded styles") or once upon each use ("inline styles").
Each aggregator also has its own inexplicable quirks. Bloglines insists on imposing a grey background on every other news item in a feed. This creates distracting visual conflicts for some content that looks fine on the publishers' own Web sites. NewsGator Online, for its part, forces hyperlinks to be smaller than normal text, and turns them a garish red color when hovered over.
NewsGator Strips Out All Styles Except Its Own
In an interview at Gnomedex, NewsGator CEO Greg Reinacker confirmed, "Styles we do strip out on purpose. Using purely styles, you can write something that would completely cover the screen. ... If you use a table in the old [HTML] format, we leave that in, but if you do it with inline styles, we strip it out."
It's well-known that some CSS code can download programs or otherwise play havoc with a user's monitor. But there would be little danger in supporting harmless CSS styles like "background-color," in case a blog publisher wished to, for example, use a yellow-highlighter effect on some text.
"We err on the side of being heavy-handed," Reinacker said. "If you start changing fonts, people may get a font that is unreadable on a TV screen." Nonetheless, NewsGator Online does support the old HTML "font" tag that allows publishers to specify fonts. NewsGator strips out only the newer, CSS method of specifying fonts. And are people who use TV screens to surf the Web really the target audience for online news feeds?
Regarding hyperlinks that NewsGator Online forces into strange sizes and colors, Reinacker acknowledged, "Those sound like CSS bugs on our side." The NewsGator Online Web service uses CSS styles to control the links in its user interface, and these styles wrongly affect the links within news feeds as well, as far as I can determine.
Bloglines Anticipates More Style Support
Bloglines senior developer Paul Querna told me at Gnomedex that styles are currently stripped out by his company's Web service, "but we've talked about ways to support more of this." The biggest challenge is to read a publisher's CSS and leave in only those styles that cannot, say, download programs or write garbage all over the Windows Desktop.
"No one's really done it yet," Querna explained. "We've been kind of waiting for an easy way to do a CSS processor."
Since every online RSS aggregator is, by definition, running within one browser or another, it's not difficult to simply allow that browser to render any styles that are found. RSS readers such as Bloglines, however, must write routines that accept safe styles within CSS Level 1 while excluding dangerous styles.
One promising development for RSS feeds is that Bloglines now supports Macromedia Flash, which NewsGator Online currently does not. Bloglines has supported Flash videos for a few months, but gained Flash audio support only within the last week, according to senior product manager Robyn DeuPree. (The company hasn't yet announced this -- you read it here first.) Although Flash files can theoretically harbor suspicious code, Bloglines makes Flash safe by restricting it from running any script commands. Flash files, therefore, can only display video content or play an audio track.
Browsers, E-Mail, and Soon RSS Aggregators
It took several years for Web browsers to standardize so Webmasters and surfers alike can expect some consistency when viewing online content. Online e-mail readers have gone through a similar evolution, slowly gaining support for the new-fangled styles. (Campaign Monitor, an e-mail service provider, has posted exhaustive test results showing which CSS styles are supported by today's Webmail environments, such as Gmail, Hotmail, Yahoo Mail, and Microsoft's new Live Mail. In short, Gmail's style support is terrible, while the other services have fairly good capabilities.)
Let's hope it doesn't take many more years for the promising field of RSS news feeds to gain support for Web-standard styles. Some content just isn't that compelling when it's forced into a plain-vanilla mold.
Figure 1: Online RSS feed readers now have good support for basic HTML tags,
but generally don't support CSS styles.