More with less seems to be the mission impossible for web designers: Addressing more customers, a broader audience, more diversity in terms of browsers, more accessibility, users asking for more speed, while spending less to maintain or redesign a web site. Caught between a rock and a hard place, web designers face a formidable challenge. Yet they are finding an unsuspected ally in the battle: web standards.
This article discusses how adhering to web standards, and leaving behind proprietary markup and technologies, can contribute to a company's business goals.
Site wide look and feel consistency
By separating structure (or content) from presentation, web designers have a lot to gain. Specifically, presentation is defined using layout-oriented CSS language. Storing CSS in a separate document (aka style sheet) and applying it to a set of HTML documents permits a complete change of presentation for all these documents in a snap. Strict HTML (as opposed to the often-used transitional HTML markup), forces the designer not to use presentation tags in the HTML documents, naturally enforcing the separation of content from presentation.
Improved User Experience: Uses less bandwidth, loads faster
HTML code is often much more compact (therefore easier to read and maintain) when used in conjunction with CSS. According to various reports, case studies, and Andy King, author of Speed Up Your Web Site: Web Site Optimization, CSS has made it possible to transform table-based layouts into CSS-based layouts. Typically this reduces page size by 25 to 50%. This translates into better user experience, according to Usability Guru Jakob Nielsen, who notes that users tend to close a web page when it takes more than 10 seconds to load.
Increase Website Traffic
Better search engine ranking
Being well-placed in search engines is one of the hardest challenges faced by webmasters. In this case, every bit helps.
Using CSS to render titles instead of graphics also helps in this regard.
Accommodate Multiple Platforms
Standards-based code and cross-platform go hand in hand. While some browsers have quirks that cause different behavior by platform, Mozilla-based browsers are designed to behave identically on all supported platforms (Mac, Linux, Unix, Windows...)
A very significant portion of electronically-stored information is produced for the web and written in HTML format. Most of this information uses invalid HTML which happens to be displayed correctly in permissive older browsers. As the web evolves, web browsers may eventually become either less permissive, or behave differently when given invalid markup (e.g. parse invalid data and render it slightly differently). Using valid, standards-compliant markup ensures that data will still be re-usable for a long time, as specifications on how to parse the standard formats are well documented and here to stay.
Contrary to popular belief, coding to standards does not mean producing less compelling content. As a matter of fact, almost anything taking advantage of proprietary extensions can be done in a standards-compliant way, with the added benefit of being cross-platform and future-proof.
Using strict HTML and separating structure from content paves the way to XHTML, an XML-compatible version of HTML. Using XHTML will enable web authors to leverage tools from the XML world, such as XSLT, to easily manipulate XML data.
Using XHTML is a way to enter a set of standards composed of XML-based technologies, such as XML, XSLT (transforming data), SVG (animated graphics), MathML (describing mathematic expressions)... Such technologies have been designed to be interoperable, are the base of Web Services. This goes much further than just web authoring.
Reduce cost of maintenance
Maintaining a web site is often very costly and using Web Standards can help a lot in this regard.
Well-formed HTML code
One of the major headaches for web developers comes from web pages being displayed differently in various browsers. Such rendering differences do exist in older browsers, but most of them are well known and documented. In many cases, rendering differences are caused by ambiguous coding.
Well-formed code significantly reduces rendering differences in various browsers. Using validation tools such as the W3C Validator helps by spotting coding errors and making sure HTML code is well-formed, which eliminates ambiguity in parsing by browsers.
Compatible with newer browsers
More and more browsers, other than Internet Explorer for Windows, are used to surf the web:
- Windows : MSIE, browsers using Netscape Gecko's rendering engine , Opera.
- Mac: MS-Tasman (IE/Mac's rendering engine) , Netscape Gecko-based browsers, Safari, Opera
- Linux: Netscape Gecko-based browsers, KHTML-based browsers, Opera
Overall, 5 different rendering engines are used to surf the web using dozens of browsers on 3 platforms.
According to many sources, Netscape Gecko-based browsers are now much more common than Netscape 4.x and MSIE 4 browsers, and it is increasing significantly with time. Firefox alone has been downloaded more than 50 millions times in 6 months.
In such an increasingly heterogeneous environment, testing each web page in every configuration is impossible. Coding to standards is then the only practical solution.
The Netscape 4 and IE4 exceptions
The only drawback in using CSS is that older browsers (specifically IE4 and NS4) will not be able to render as intended. In some cases, where a significant portion of the audience is running Netscape 4.x, use of simple tables for layout and CSS for font control may be a solution. Another option is to serve HTML content to Netscape 4.x users, without CSS style. The content will be usable but not as attractively presented as in a modern browser. Furthermore, 4.x browsers are known to have security issues, so their users should be encouraged to upgrade.
Being accessible is mandatory in many countries for government agencies (US, UK, Canada), and --in some countries like Australia-- for every organization. In the US, Section 508 applies to government-funded projects and agencies.
Coding with standards (particularly CSS for positioning, and strict HTML) makes accessibility an easier goal to achieve, as standards have been created with accessibility in mind.
Taking care of accessibility means being able to serve web content to a larger audience, increasing web site usability, even for non-disabled people.
Reducing dependency on any one developer
A common challenge for web developers when assuming management of existing sites is the code written by other developers. In many cases, they are faced with poor HTML code quality that may also rely on undocumented features or hacks and specific coding practices. Lack of documentation is also often problematic.
Following standards-compliance in requirements documents is a very effective way to ensure measurable quality of the final product, the W3C being an impartial judge.
Because standards are very well documented, another person taking over some standard-compliant code can hit the ground running - and will not need to become familiar with the previous developer's coding practices. This also significantly reduces vendor lock-in.
Benefits to web site visitors
Thanks to accessibility, faster loading web pages, and compatibility with more browsers (not limited to the one or two browsers using for testing), visitors are more likely to appreciate your service and come back later.
Using web standards and separating structure from presentation brings a host of benefits for today and tomorrow.
Today, it means more audience, lower cost to produce new content, and becoming compliant with accessibility requirements.
For tomorrow, it means reducing vendor lock-in, reducing cost of maintenance, and having a more flexible web site in terms of presentation. Last but not least, use of standards opens the door to XML technologies.
All these factors also contribute to easier site management, a larger audience and a better return on investment. Geeks, marketers and bean-counters can all benefit from a standard-based web site. This is more than one could even dream of.