Technology is constantly evolving and advancing and nothing shows this more than the (short) history of the web. Just a few years ago, the internet was full of websites with blinking, animated icons and background midi music and lots of people thought it was really great. Advance a few years forward and, although you still see those things from time to time, the web now contains much more sophisticated elements like video clips, rss feeds, detailed flash animations, and more.
As the "ideas" about what a website is and what it should, or could, do for a company have also evolved, designers have strived to streamline the process of developing websites and to make them more efficient and predictable. Because different browsers interpret code differently, it has not always been easy to make more complex websites look the same (or even good in some cases) across browsers and systems. What used to work in the early days of the web was no longer working the way web designers wanted or needed it to.
Cascading Style Sheets to the Rescue.
Cascading Style Sheets, also known as CSS, were introduced to improve the capabilities of web presentation. Prior to CSS, almost all of the html attributes that made up the "look and feel" of a web page were contained within the html directly. This made web page code heavy and often quite clunky. By using Cascading Style Sheets, designers could separate the design elements from the content of a web page and thereby make the pages more efficient, more streamlined, and easier to maintain.
Not all designers jumped on the CSS bandwagon, and even today, many designers still prefer to layout their web pages using html table-based design, the way just about everyone used to do it. Using CSS to layout a webpage is quite different from the "old fashioned" table layout. However, the advantages to using a CSS layout for a web page heavily outweigh any argument given for using html tables.
Although I would not expect clients to know the intricate details of Cascading Style Sheets (and let's face it, most clients do not really want to know much if anything about it!), I do think that clients should be aware of the advantages of using CSS layouts and how they can enhance their websites both now and in the future.
Advantages to Using CSS for Web Layout
- Web pages will load faster
No one likes waiting for web pages to load and if a page takes too long to load, many users will often simply leave. Generally speaking, CSS based page layouts require much less html coding than table-based layouts. This usually results in the pages loading more quickly. Moreover, an externally linked CSS file, once loaded the first time, does not have to be reloaded and re-read on every page. When using CSS for layout, browsers can cache (keep in memory) all the formatting and stylizing for your pages instead of having to read and interpret each style tag on every page. This can also result in much faster page loading times.
- Visual consistency across pages One of the strengths of using Cascading Style Sheets in a website layout is that design elements can be defined in a single place (the css file) and will automatically be applied to those elements on the website. No longer does each individual page have to be updated to reflect the new style. This makes for much greater consistency throughout the site. With CSS, you do not have to re-code every element on every page (and check and double check that you did not miss some pages!), Styling updates are automatic and site-wide.
- Accessibility and usability CSS allows for more interactive style elements, including font size and line heights, which can make web pages more usable for people with disabilities. Web pages that use CSS layouts are also often more compatible with more browsers. What's more, designers can create specific css files specifically for printing, or mobile devices, as well as the standard computer screen, theseby making websites truly multimedia applications.
- CSS is better for SEO Since pages load faster with CSS Layouts, search engines can more easily crawl through the site. Also, since there is often less coding on the pages and because CSS separates the design elements from the content, it is easier for search engines to determine what a page is about and to index it appropriately. Finally, search engine spiders are quite heavy on structural organization (header (h1, h2, h3, etc) tags) and CSS allows designers to design those elements as needed and to place them within the page layout in a way that is most beneficial for search engine optimization.
- Future redesigns will be more efficient (read, less expensive!) Since CSS layouts separate design elements from content, once a site has been designed using Cascading Style Sheets, making changes to the design is often easier because fewer files need to be updated (often only the css files rather than every page on the website!) This makes for faster and less expensive design changes in the future. Set your site up using CSS now and you can have easier, more efficient and faster updates in the future.