Last week I talked about 960 Grid System is Getting Old. Surprisingly a lot of comments have been made. It seems like people are using 960gs because of the "golden ratio" — all numbers are even. I'm a designer, not a grid scientist. Why restrict your layout so that it can fit into this 960gs? A grid is supposed to help you in design, not to limit your creativity. The 978 grid, that I mentioned before, is not just about increasing the page width, but to loosen the gutter space so users can read it more comfortably. Today, I would like to write a follow up post to further ellaborate on some of the points I brought up initially.
Problems with 960.gs
Narrow Gutter Space
I did a quick Photoshop mockup to show how 20px gutter space would look like on 960gs. The gutter is a bit too narrow for modern design.

To solve this small gutter problem, a lot of people add padding to either the content area or sidebar containers, making that subsequent content area smaller.

Unnecessary Left and Right Margin
To those who don't know, the content width in 960gs is actually 940px, not 960px. It is 960px because of the added margin space on the left and right. Some people argue that this margin space helps visibility on mobile devices such as the iPhone and iPad. Technically, if there is a margin required, it should be applied on the container, not the columns.

Too Many Classes
Visual aesthetic might be a personal biased but, even so, there seems to be some fundamental CSS issues as well. Below is a sample case. To achieve the layout result I've designed here, with 960gs, you will be required to add extra CSS classes: alpha, omega, and clear. The alpha & omega class is required to get rid of the margin space on the left and right hand sides of the columns. A clear class is also required to clear the floats after each row of columns.

The Simpler 978px Grid (demo)
The 978px grid that I mentioned in my previous article got rid of the unnecessary left and right margin. As a result, the content width is increased by 38px. The gutter space has incresed from 20px to 30px. It still fits in the 1024 default display and the columns can be divided in any number of ways: 1/11, 3/3/3/3, 4/4/4, 3/9, etc.

978px HTML & CSS (demo)
The following is a simpler CSS grid that Darcy and I came up with and deals with scenarios, like the "Too Many Classes", in an elegant way. There is only a left margin on the grids which creates the gutter space. Grid12 is not required because grid12 is the width of the container. There is no .alpha or .omega class, but a single.first class required for the first column in every new row. The purpose of the .first class is to clear the floats and get rid of the left margin space. Since the .first class clears the float, a.clear class is not required after each row.
.container {
width: 978px;
margin: 0 auto;
}
.grid1, .grid2, .grid3, .grid4, .grid5, .grid6, .grid7, .grid8, .grid9, .grid10, .grid11 {
float: left;
margin-left: 30px;
}
.grid1 {
width: 54px;
}
.grid2 {
width: 138px;
}
.grid3 {
width: 222px;
}
.grid4 {
width: 306px;
}
.grid5 {
width: 390px;
}
.grid6 {
width: 474px;
}
.grid7 {
width: 558px;
}
.grid8 {
width: 642px;
}
.grid9 {
width: 726px;
}
.grid10 {
width: 810px;
}
.grid11 {
width: 894px;
}
.first {
margin-left: 0;
clear: left;
}
The Simpler 940px Grid (demo)
If you really want to keep the golden ratio, you can achieve the same result with this simpler grid. For those that argue the left and right margin is required to prevent the content from being trimed off in the mobile devices should think about appling that space to the container, not the columns themselves.
Conclusion
Don't force your design to fit to a grid that hinders your creative genius. Do what makes your designs look good and is comfortable to you. A grid should be your layout guideline, not restriction.
Simple CSS Grids! Oh Yeah!
One of the more successful the work of your blog, thanks iked
This is great. I’m really liking the simplicity.
This is great. I really like the simplicity.
klima servisi, kombi sevrisi hizmetleri veren web sitesi.
yes! makes so much more sense to use the 978gs. thanks!
so I have to open a container for every new row? for example
[code]
[/code]
because when I don’t it gets messy..
Maybe getting old, but still a great solution :)):)
I’m looking to up my design skills and this grid will definitely help me. I also agreed that you should make padding in the container and not have additional columns.
while I can appreciate the use of grids, you cant beat good old hand cranked code. As a designer you should have the ability to create sites which fit the customers needs and requirements.
Why dont people be creative and use their imagination rather than using grids and making copycat sites.
Awww… But we all love CSS… <3
I’m amazed that everyone still gets so uptight about suggestions regarding the 960px grid. Surely, as designers, we should be pushing the boundaries of what is possible a little bit more??
Yes, it makes life very convenient for designers and it’s possible to produce some gorgeous looking sites using the grid. With the popularity of widescreen monitors now though, anyone still restricting their designs to 960px is really missing a trick.
it will definitely make a good designer better! all useful tools shoud be utilized to make the design more attractive at the same time cope up with the demands of its audience! Good designers have to visit http://www.bidstornado.com, and see how much you can earn :)
I will definitely follow these guidelines for my next websites. :)
I did a minimalistic generator for this type of grid. You have to play with the parameters in url.
940 grid
http://www.hanneskirsman.com/978.php?total_width=940&cols=12&gutter=20
978 grid
http://www.hanneskirsman.com/978.php?total_width=978&cols=12&gutter=30
Also, no rounding is done. I don’t know how well browsers handle commas so it’s easy for you to see if things don’t quite measure up if margin is 2 meters long.
ps. there’s nothing interesting on my homepage.
And if you do http://www.hanneskirsman.com/978.php?total_width=100&cols=10&gutter=1
You allmost get nice floating grid. Just replace px with %.
There’s something to note about though. When nesting divs with floating grid and without making changes to the current css, you have to think relatively. You’d think that making 2 even columns in grid8 div needs 2 grid4 divs. But no. You have to have ~50% divs which in current example are grid5 classes.
I find your solutions very convenient.Thanks for sharing.
for now I have not used the grid element, but after I saw this tutorial may in the future I will start using
thanks
Bad news, folks. It breaks in IE7 and IE6 if grid cells have different heights.
Check it here http://www.hanneskirsman.com/940fail.html
Modified one cell and added breaks:
<div class=”grid3″>
grid3<br /><br />grid3
</div>
God damn MS…
So we’re still back with div clear.
But I guess you could do this with jQuery:
$(“.first”).before(‘<div class=”clear”></div>’);