Unlimited layout options with stacked columns

The five styles of columns in this design series can be combined into new layouts by stacking the columns on top of each other. Any number of columns can be stacked and they can be in any order. The number of possibilities are endless.

Simply include the style rules for each type of column layout used on the page. The CSS has been designed so it is easy to add and remove them.

See the main page on each column variation for dimensions, nested div structures and positioning.

No CSS hacks

The CSS used for this layout is 100% valid and hack free. To overcome Internet Explorer's broken box model, no horizontal padding or margins are used. Instead, this design uses pixel widths and clever relative positioning.

Equal height columns

It doesn't matter which column has the longest content, the background colour of all columns will stretch down to meet the footer. This feature was traditionally only available with table based layouts but now with a little CSS trickery we can do exactly the same with divs. Say goodbye to annoying short columns!

Divs versus Classes

There are two main ways to reference a div or any other HTML element from your style-sheet, you can use an id (id="idname") or a class (class="classname") so which one is best? Well the answer is it depends on what you are trying to do.

An id must be unique, this means you cannot have two elements on the one page with the same id. So an id is useful for something that never repeats on a page like a header or footer. Classes don't have to be unique so they can be used as many times as necessary. A good example of a repeatable element would be a link style, you can have as many links on a page as you like and they can all look the same by giving them the same class name.

Use classes for stackable columns

Because the columns in this stackable design can be repeated any number of times we cannot use ids because they would be duplicated. Only classes allow us to repeat the columns as many times as we like. So please keep that in mind if you are modifying this design. Of course if your modified layout does not have repeated columns then you can change some of the classes back to ids.

No Images

This layout requires no images. Many CSS website designs need images to colour in the column backgrounds but that is not necessary with this design. Why waste bandwidth and precious HTTP requests when you can do everything in pure CSS and XHTML?

No JavaScript

JavaScript is not required. Some website layouts rely on JavaScript hacks to resize divs and force elements into place but you won't see any of that nonsense here.

Full cross-browser support

The holy grail 3 column liquid Layout has been tested on the following browsers:

iPhone & iPod Touch

  • Safari

Mac

  • Safari
  • Firefox
  • Opera 9.25
  • Netscape 9.0.0.5 & 7.1

Windows

  • Firefox 1.5 & 2
  • Safari
  • Opera 8.1 & 9
  • Explorer 5.5, 6 & 7
  • Netscape 8

SEO friendly

The higher up content is in your page code, the more important it is considered by search engine algorithms. To make your website as optimised as possible your main page content must come before the side columns. This layout does exactly that: The center page comes first, then the left column and finally the right column (see the nested div structure diagram for more info). The columns can also be configured to any other order if required.

Resizable text compatible

This layout is fully compatible with resizable text. Resizable text is important for web accessibility. People who are vision impaired can make the text larger so it's easier for them to read. It is becoming increasingly more important to make your website resizable text compatible because people are expecting higher levels of web accessibility. Apple have made resizing the text on a website simple with the pinch gesture on their multi-touch trackpad. So far this trackpad is only available on the MacBook Air but it will soon be rolled out to all of their systems. Is your website text-resizing compatible?

Valid XHTML strict markup

The HTML in this layout validates as XHTML 1.0 strict.

Free traffic for your website

If you use this layout for your website send me an email with the link and any other information you have so I can add you to my list of example sites. Once I have a few links I'll publish them on my website and you'll get free traffic!

FREE for anyone to use

You don't have to pay anything. Simply view the source of this page and save the HTML onto your computer. My only suggestion is to put the CSS into a separate file. If you are feeling generous however, link back to this page so other people can find and use this layout too.