The personal disquiet of

Mark Boulton

August 30th, 2005

Five simple steps to designing grid systems — Part 4

Layout seems to be a hot topic at the moment, mostly promp­ted by the ALA redesign and the numer­ous dis­cus­sions of the choice by Jason and the ALA team to go 1024 for a fixed width. I’m not going to go into my thoughts on ALA in too much depth here, there’s been a lot of that already, but it seems like the right time to get this art­icle out.

So, fixed width grid design for the web. What is it, how do we do it and how do we imple­ment it?

For the pur­poses of this art­icle, I’m going to be focus­sing on the the­ory of cre­at­ing the grid rather than the imple­ment­a­tion. I did men­tion in the last series that I would cover imple­ment­a­tion using CSS, well I’m not going to. There are just so many resources and books avail­able telling you how to cre­ate the CSS lay­outs you need—I’ll touch on it, but I won’t be going into too much detail.

The Meas­ure­ments

A fixed grid for design­ing for the web is as close a trans­la­tion from tra­di­tional grid design as there is. The designer is using fixed meas­ure­ments, pixels mostly, to con­struct the grid and to pos­i­tion ele­ments within the grid struc­ture and a can­vas which is based on a fixed size. See, everything is fixed.

The Can­vas

Now things start to get a little less con­crete. The can­vas size for print design is determ­ined by the media size — paper, sig­nage, envel­ope, whatever. The can­vas size for fixed grid design on the web is nor­mally determ­ined by the browser win­dow size, which is in turn determ­ined by the user’s screen res­ol­u­tion. These are not fixed. There­fore a designer should design to the min­imum require­ment, which is nor­mally the aver­age screen res­ol­u­tion for the major­ity of users.

I’m not going to quote fig­ures here, because I’ll prob­ably be wrong, but I don’t think I’m wrong in say­ing that 800x600 pixel screen res­ol­u­tion has, for quite a few years now, been the screen res­ol­u­tion to design to.

As I men­tioned, with the relaunch of ALA, and sites like Styleg­ala, there has been a renewed dis­cus­sion about fixed width grids for 1024. So, what’s my opin­ion on this? Well, in terms of the actual grid design it really doesn’t mat­ter what size the can­vas is. What should be determ­in­ing the decision to go 1024 is research into user’s screen res­ol­u­tions. If the user base of a cer­tain site is shown to be using res­ol­u­tions of that size and above, then a decision to use that size to design to is a valid one.

How­ever, as some people have noted, even if you do run at a higher res­ol­u­tion than 800x600 does that mean your browser win­dow occu­pies the entire screen? The answer to this is, gen­er­ally we don’t know. I per­son­ally think that not only is it plat­form spe­cific, but it’s also down to the indi­vidual and their exper­i­ence level. Maybe more exper­i­enced users on a PC don’t use their browser’s at full screen. From my exper­i­ence run­ning user tests with a wide range of people, is that more novice users, par­tic­u­larly on a PC, run a browser at full screen because that is the default, whereas on a Mac the default isn’t full screen.

What I haven’t touched on yet is the device you are using. This of course could be a PDA, a mobile phone or a com­puter. Grid designs should be looked at for each of these devices.

That is all I’m going to say on the mat­ter for now though. Once the final part in this series is up, fluid grid design, there can be a more informed dis­cus­sion I think.

Nice, easy dimen­sions and think­ing modular

Without fur­ther a do, let’s get into this grid design.

As dis­cussed in the rest of this series (part 1, 2 and 3), we will begin our grid design by ‘shap­ing the page.

For the pur­poses of this simple (I am try­ing to keep it simple) art­icle, I’ll be using 800 x 600 as my default res­ol­u­tion to design to. For many years I’ve designed to a base min­imum (based on 800 x 600) of 760px x 410px (410px being the fold). Don’t ask me where I got these fig­ures from, but it just stuck and seems to be ok for most plat­forms and browsers. Oh, you can of course go smal­ler than this and don’t pay too much atten­tion to the fold, in my exper­i­ence most users don’t have a prob­lem with scrolling.

We begin by apply­ing ratios to this can­vas, in the same way we’ve done with design­ing grid sys­tem for print. The example I’m using for this tutorial is my own site, which uses a fixed grid and sits hap­pily below 760px wide.

{title}

The design for my site is built around around a very simple grid sys­tem. Once I had my grid, I used pho­toshop to comp together the designs pos­i­tion­ing any ele­ments exactly on the grid lines. The grid was designed intially for a con­tent and nav­ig­a­tion area based on the Rule of Thirds (which is roughly approx­im­ated around the Golden Sec­tion), the dimen­sions of which are 250px and 500px respect­ively. The con­tent area is then sub­divided into two 250px columns. 

See, nice easy dimen­sions. How­ever, this only deals with hori­zontal meas­ure­ment. As dis­cussed in the other grid art­icles, ver­tical meas­ure­ment is also import­ant, but this is where we can run into prob­lems with design­ing even fixed grid sys­tems on the web.

When user’s change the type size, ele­ments move ver­tic­ally (if we’ve fixed the hori­zontal widths). The ver­tical meas­ure­ments that we’ve craf­ted sud­denly dis­ap­pear. Now, in the purist’s eye, this is a real prob­lem but it is some­thing we have to design to. We really can’t do any­thing about it when design­ing with fixed units such as pixels which can’t be res­ized by the user.

Just a word about Gutters

Gut­ters are the gaps in between columns. They are there so text, or image, from dif­fer­ent columns don’t run into each other. In grid sys­tem design some­times, depend­ing on what the­ory you read, gut­ters are seper­ate to the columns. This cre­ates prac­tical prob­lems for us when design­ing grid sys­tems on the web because of the way we cre­ate the columns.

Gen­er­ally the columns we cre­ate, using Web Stand­ards, are ‘divs’ which are given widths and posi­tioned and styled using CSS. So, ideally, if we’re cre­at­ing these columns, we don’t want to be cre­at­ing seper­ate ones for the gut­ters. We there­fore deal with gut­ters as part of columns and they are imple­men­ted using pad­ding, or cre­at­ing mar­gins, on ele­ments posi­tioned within them, or some­times the column divs themselves.

{title}

Cre­at­ing the design

The thing about design­ing to grids is that in order for the grid to work you must con­sist­ently align items on the grid lines. I know that sounds totally obvi­ous but design­ing to strong grids means you have to take a step back from what you think the design should look like (and then adding things to the grid to suit), and instead con­cen­trate on cre­at­ing a har­mo­ni­ous design within the frame­work you’ve created.

{title}

The bulk of the design work, if you exclude sketch­ing with a pen­cil, is done in Pho­toshop. First of all I take great care in draw­ing the grid accur­ately, to the pixel, and then I over­lay con­tent ele­ments ensur­ing the align­ment is precise.

From Pho­toshop to the browser

As I stated at the begin­ning of this art­icle, I’m not going to con­cen­trate too much on how you actu­ally build a multi-column CSS lay­out, there are just so many other great resources on that topic.

One of the most use­ful ‘tools’ for cre­at­ing pixel-perfect grid sys­tems for the web is Khoi’s superb idea of using a grid as a background-image ele­ment on the body tag. To sum­mar­ise: Using the grid I designed in pho­toshop, I save it out as a gif and then apply that to the back­ground of the body tag. This provides me, through­out the build of the site, the grid so I can align all the con­tent ele­ments accordingly.

{title}

As you can see from the dia­gram, this makes pro­duc­tion of the design incred­ibly easy when you have a visual ref­er­ence rather than hav­ing to remem­ber your grid or inter­pret a sketch.

Imple­ment­a­tion using Web Standards

This really could be a series all on it’s own. Imple­ment­a­tion of a multi-column grid using CSS is pretty stand­ard prac­tice nowadays, but there are some very use­ful resources out there which I have used for the past 18 months or so.

Doug Bow­man at Stop­design has pion­eered a tech­nique for pro­du­cing flex­ible column lay­outs using CSS and con­trolling them by giv­ing a class to the body tag. This is the tech­ique I’ve used through­out this site. This means if I cre­ate a new sec­tion of the site or simply decide one day that I’d rather have my nav­ig­a­tion on the right, all I have to do is change the class on the body ele­ment and everything switches over. Using this tech­nique, along with Khoi’s tech­nique for sense check­ing the design against the grid, has been an excel­lent way to pro­duce tight, grid lay­outs for me, give it a go and let me know what you think.

Up next: Fluid grid sys­tems for the web.

Timely? Yes. Com­plic­ated? Yes, but they don’t have to be. Fluid, or flex­ible, grid sys­tems have a right­ful place in grid sys­tem design for the web but they come with their own par­tic­u­lar set of chal­lenges. In the next install­ment I’ll be hav­ing a look at flex­ible grids using rela­tional meas­ure­ments and also tying the grid design closer to the typo­graphy rather than the browser — flex­ible from a type per­spect­ive, rather than a browser per­spect­ive. Stay tuned.

The series

This is the fourth install­ment of this “Simple Steps…” series.

  1. Sub­divid­ing ratios
  2. Ratios and com­plex grid systems
  3. Grid sys­tems for web design: Part 1
  4. Grid sys­tems for web design: Part 2 Fixed
  5. Grid sys­tems for web design: Part 3 Fluid

32 Responses to “Five simple steps to designing grid systems — Part 4”

  1. MIND Justin said on: August 30th, 2005 at 9:07 pm

    Great art­icle!

    Art­icles like this show that there is much more to web­design than front­page and a cracked ver­sion of Photoshop

  2. Rob Lewis said on: August 30th, 2005 at 11:47 pm

    Bril­liant Mark, keep it com­ing! And hope you’re feel­ing better.

  3. Brad Brooks said on: August 30th, 2005 at 11:49 pm

    Another great install­ment Mark. I echo Rob and hope you feel bet­ter soon…

  4. Miko said on: August 31st, 2005 at 7:03 am

    Keep up the great work.

  5. Davide said on: August 31st, 2005 at 9:43 am

    Yes! be mod­u­lar! I would like to

    But:

    “con­trolling them by giv­ing a class to the body tag..” how can i do it!

    Could you give me some resources where i can learn it? 

    Thanks!

  6. Bertje said on: August 31st, 2005 at 9:56 am

    Thanks Mark. Nice art­icle. What I miss though is more on the idea behind the grid. You have told we should use a grid and how to prac­tic­ally do this. But I guess there is more to it than just a 1:2 devi­sion. And what about the ver­tical grid? We just leave that out? 

    A bit more inde­pth on the actual sub­ject, grids, would have been nice in my oppin­ion. And less about everything around it (pho­toshop, css …) But hey, a least you write­about it. I don’t (lazy ass …). 

    So keep up the good work and I’ll be check­ing back for part 5.

  7. Mark Boulton said on: August 31st, 2005 at 10:02 am

    Ber­tje — Have a look through the first three parts of this series, within those art­icles I talk more about the the­ory in design­ing grid sys­tems with ratios. 

    With regards to this art­icle, as I stated, ver­tical grid divi­sions, if ratio based are impossible to retain in a browser when the user can change the text as this will change the ratio. 

    There is an assump­tion that grid design has to be com­plic­ated, that you have to have hun­dreds of intric­ate boxes etc all aligned to some crazy ratios. This isn’t the case at all. So, yes, my ini­tial grid is just a 1:2 ratio which is then sub­divided. The 1:2 ratio is of course based on the Rule of Thirds, which is a sim­ilar ratio to the Golden Sec­tion. So, what may look extremely simple, has been thought out quite a lot.

  8. MH said on: August 31st, 2005 at 7:14 pm

    I like the fact that you are focus­ing on the­ory rather than imple­ment­a­tion details, we could use more art­icles like that. 

    How­ever, this is the com­ments sec­tion, and I have an imple­ment­a­tion question ;) 

    While, as you men­tion, there are plenty of mul­ti­column CSS tutori­als out there, I’m not sure they would sup­port your design: if you have three columns (with a div per column), how do you keep items in column one aligned with items in columns two and three (as hap­pens in your example)? It seems like there needs to be some arti­fi­cial height lim­it­a­tions on the con­tent in order to do that. 

    Look­ing at your home page, that seems to be the case. How­ever, if I try adding some longer text to one of the port­fo­lio sec­tions, fort example, it over­laps the con­tent below it in an ugly way. Not very flexible. 

    And if you approach it with nes­ted divs to avoid that prob­lem (outer divs=rows, inner divs=cols), might you not as well just use tables?

  9. timfm said on: September 1st, 2005 at 2:02 am

    Mark,

    This Simple Steps series is BRILLIANT. I’m sal­iv­at­ing for the next article. 

    A ques­tion about gutters: 

    I see the graph­ics and text in the third and fifth columns (“BBC Vocab” and “Cube Gal­lery”) do not hon­our the gut­ter. Every other ele­ment does (save, “skip to con­tent” and access­ib­il­ity icons). Is there a reason for this?

    –tim

  10. Nathan Smith said on: September 1st, 2005 at 3:53 am

    Great art­icle.  About 2 weeks ago, I pretty much re-designed my site ver­batim as you described, gut­ters and all, but before your art­icle came out (do I get a prize?). 

    My actual con­tainer div is 760px wide, but the columns inside are each 250px, with a gut­ter of 10px each, and some extra 10px space on the right side of the con­tainer (to bal­ance out the 10px from the gut­ter on the left side). 

    @MH: I’ve done some fake columns on my site, if you want to check them out.  I used the footer to cap them off, and a con­tainer back­ground to sim­u­late them.  For a full writeup on how to do fake columns, check out this article…

    http://www.alistapart.com/articles/fauxcolumns

    I say all that not to draw atten­tion to myself, but as a test­a­ment to Mark’s excel­lent writeup.  These design prin­ciples are very solid.  I sup­pose I could be like the guy from the Hair Club for Men com­mer­cial, say­ing “It worked for me!” 

    I love the concept-based approach to this tutorial.  I hope you feel bet­ter soon and that there are many more art­icles like this (and more related to typo­graphy) on the way. 

    By the way, I love the JavaS­cripton the com­ment form, that offers more inform­at­ive tips.  Very, very nice touch.

  11. Matt said on: September 2nd, 2005 at 2:33 am

    I’m lov­ing these art­icles Mark. They’re very valu­ble, espe­cially for a hack like myself. Can’t wait for part 5.

  12. Mark Boulton said on: September 2nd, 2005 at 12:33 pm

    MH — You’re right, there does have to be a height set on some ele­ments (such as the tin­ted ‘port­fo­lio’ boxes in my example. As I said in the art­icle, ver­tical divi­sions when the user can change them is a bit of a challenge!

    timfm — Well spot­ted, you of course win a mys­tery prize for the delib­er­ate mis­take.  :O

  13. timfm said on: September 3rd, 2005 at 3:41 am

    Hoo­ray! Do I get to choose? A copy of this would be lovely. 

    ; ) 

    –t

  14. Malarkey said on: September 3rd, 2005 at 7:02 pm

    Mark,

    I just wanted to say a very big thank-you for all the effort you have put into what I think has been the best series of design art­icles this year.

  15. Mark Boulton said on: September 4th, 2005 at 8:36 pm

    Thanks Malar­key — I appre­ci­ate it!

  16. Riccardo said on: September 5th, 2005 at 1:01 am

    I *heart* this series. =D 

    Being a web author who dare/has to take care of some small sites’ graphic design, I can really appre­ci­ate the value of art­icles like these. 

    I mean, when I star­ted to design, I hadn’t a solid graphic back­ground, so mas­ter­ing con­cepts like grid sys­tem in web design took reaaally a lot of time to me. 

    If I had art­icles like these handy at that time, I guess I could have sens­ibly shortened my learn­ing curve to proper designing :)

  17. Riccardo said on: September 5th, 2005 at 1:06 am

    oh, and…

    flex­ible from a type per­spect­ive, rather than a browser perspective

    really spot on :)

  18. Bob Easton said on: September 5th, 2005 at 10:03 pm

    Great series!  C’mon, let’s get on to num­ber 5 soon!  See, you set a great tone and we don’t care that you need to recu­per­ate from whatever ails you. 

    Ser­i­ously, get to felling bet­ter soon. 

    Lastly, a nit… “The Series” for this art­icle describes it as the thrid install­ment.  Should be fourth.

  19. Alexander said on: September 6th, 2005 at 11:20 pm

    Gut­ters by Ratio

    Hey Mark,

    I’m won­der­ing about using ratios for the gut­ters on columns. The example you used in part 1 of the series showed a com­plex grid with what could be con­strued as gut­ters on the edges of wider main columns. 

    Is there a reason to use an arbit­rary gut­ter width instead of basing it upon the same ratios as the rest of the page? 

    Great series, by the way. Thanks for shar­ing these insights in such a con­cise and read­able way.

  20. Mark Boulton said on: September 7th, 2005 at 10:14 am

    Alex­an­der — Nor­mally , I like to base gut­ter width on type size that way there is a rela­tion­ship between the type and gut­ter (I nor­mally put the gut­ter at any­where between 3 and 6em, this gen­er­ally depends on the typeface I’m using — Sans Serif need more space than Serifs — generally). 

    Gut­ter cre­ated by ratio is also another solu­tion. Arbit­rary widths are also fine, but on closer inspec­tion you can bet these arbit­rary meas­ure­ments are close to ratios or em measurements. :)

  21. Jamal Abdou Karim Bengeloun said on: September 7th, 2005 at 5:30 pm

    I was wondering…

    Are you con­sid­er­ing doing a book about it? It wouldn’t have to be a really big book (do you ever won­der as I do why com­puter related books have to be so big? Some­thing to do with the male ego? lol!)… 

    It could be a pdf book (maybe not as good look­ing as this one but hope­fully with less hype and more con­tent), with raw files — a tutorial kit kind of thing, that would get you from start to fin­ish on how to design a sample web page with grids (a bit like the last chapter of Bul­let Proof Web Design — but with design in mind). 

    I for one am dying for it (as can be shame­lessly seen here… I am no designer!

  22. Mark Boulton said on: September 7th, 2005 at 8:15 pm

    One step ahead of you there Jamal ;) Expect to see a book, in one form or another, in the next few months. 

    After read­ing your post on Molly’s site, I do see your point and frus­tra­tion. There’s a lot of stuff around which shows design­ers how to build some­thing tech­nic­ally, but noth­ing aimed at the reverse market. 

    Maybe that’s designer’s think­ing we’re a bit ‘spe­cial’ eh?

  23. Jamal Abdou Karim Bengeloun said on: September 8th, 2005 at 12:09 am

    What will the book be about? Five simple steps to design? 

    Oh… You mean the elit­ist design­ers’ club? Those people? The Sect? 

    The one you’re accep­ted into if only you do know by heart lorem ipsum… etc? (see I can­not get in!!)

    Too bad… Well maybe I could invite this guy to a mock up craftsmen’s club (since he also says “I am no designer” (well he does say he is after all so I don’t know if he can join) — the club’s motto. 

    I think design is truly about per­cep­tion — can you teach that? Hope so… Just point me to the right book!

  24. Glen Swinfield said on: September 18th, 2005 at 9:43 pm

    Thanks. If you haven’t stud­ied design (like me) then this kind of art­icle is a great help — I lived with design­ers through uni­ver­sity and read a few books, although they are detailed etc, none of them deliver what I want to know as dir­ectly as this series of artices. — a great idea well executed.

  25. NonPhixionNick said on: September 19th, 2005 at 10:57 am

    I agree with Glen, abso­lutely awe­some step by step article. 

    Just wanted to say keep it up and make sure you’re book you plan to pro­duce is just as good (with some more info on grid design for publication!!!)

  26. Klaus said on: December 22nd, 2005 at 5:04 pm

    Just one more hint: a “clas­sic” grid is based on the font and font size as its smal­lest unit.

    Step 1: Choose font and font size (e.g. Verd­ana, 11 px)

    Step 2: Choose line spa­cing (e.g. 140%)

    Step 3: Define column width (e.g. 40 char­ac­ters)

    Step 4: Define gut­ter (e.g. 14 px)

    Step 5: Define mod­ule size (based on line spa­cing and column width)

  27. timfm said on: December 22nd, 2005 at 10:33 pm

    Klaus,

    Could you explain this pro­cess in more depth, and show us a work­ing example?

    –t

  28. Stefan Burt said on: January 19th, 2006 at 1:34 am

    This is a great art­icle thank you for tak­ing the time to writeit! 

    But this has been a really eye opener, I own a copy of Grid Sys­tems in Graphic Design but have lacked the know­ledge to approach the text and get use­ful inform­a­tion back, but armed with this I think I’ve just added another thing to the list to explore.

  29. online bingo said on: January 19th, 2006 at 10:27 pm

    Great site, I love it!

    Take at look at online bingo

    http://www.bingoplaying.com

  30. Ultimate Guide To Grid-Based Web Design: Techniques and Tools « Tech7.Net said on: November 10th, 2009 at 7:04 am

    […] of grid-based design and walks your through design­ing a grid from scratch. Here are parts 2, 3, 4, and 5, and the pre­face to the […]

  31. Ultimate Guide To Grid-Based Web Design: Techniques and Tools | SeanBurdick said on: November 10th, 2009 at 8:06 pm

    […] of grid-based design and walks your through design­ing a grid from scratch. Here are parts 2, 3, 4, and 5, and the pre­face to the […]

  32. Ultimate Guide To Grid-Based Web Design: Techniques and Tools - Noupe said on: January 19th, 2010 at 2:33 am

    […] of grid-based design and walks your through design­ing a grid from scratch. Here are parts 2, 3, 4, and 5, and the pre­face to the series.Seven Smooth Steps to Superb Grid­sThis art­icle offers a […]

  • Me

    Hello. My name is Mark Boulton. I’m a designer, an author, a speaker and I run a small design agency where we work with lovely cli­ents and pub­lish books as we go. This is my blog.

  • More of me

  • Publications

    Design­ing for the Web
    Start­ing from £19 + VAT for a PDF Down­load. £29 for a full col­our paperback.
  • Where I work

    Mark Boulton Design
    A small design stu­dio doing good things for nice clients.
    Five Simple Steps
    Pub­lish­ing easy to read design books.
  • See me speak

    @Media 2010
    June 8th — 11th, Lon­don, UK.
    Drupal­Con 2010
    August 23th — 27th, Copen­ha­gen, Denmark.
    dCon­struct 2010: Design 1010 workshop
    Septem­ber 1st, Brighton, UK.
    Web­d­a­gene
    Septem­ber 29th — Octo­ber 1st, Oslo, Norway
    Web Developers Conference
    Octo­ber 27th, Bris­tol, UK.
    New Adven­tures in Web Design
    Janu­ary 20th 2011, Not­ting­ham, UK.
  • Copyright © 1999–2010 Mark Boulton. Made with an Apple Mac in Wales. Running on WordPress and VPS.net.