Two Column Design With CSS
Two Column Design With CSS
|
|
Two Column Design With CSS. By Simon Glaser … news is, a three column design can work in CSS, and the solution isn’t even all that hard. …
Similar Posts
Latest Design News, Daily
I summarized over on 3.7CREA.TV that I find that staying educated and current is one of the more challenging and exciting parts of being a web designer or developer. One of the great aspects of this industry is the community and amount of knowledge that is being shared every day. It is this enthusiasm and quest to learn more that has allowed the web to advance at such a fast and exciting pace.
Due to the nature of the industry and vast range of contributors to it, it can often be hard to find and monitor the great content that is being published. I used to find myself hunting through countless different websites and RSS feeds, trying to ensure I didn’t miss any valuable information, articles or techniques. Even trying to sort through them in an RSS reader is more difficult than it should be.
So to try and make finding the best web design news easier, we have launched Today In Design. Today In Design aggregates the most popular design articles from sources such as delicious, digg, design bump, etc… additionally it pulls in hand selected news articles from sources such as CSS Globe and Design Newz.
Any feedback or suggestions would be more than welcome.
The Practice of CSS Column Design: Boxes in Columns
… article, The Theory of CSS Column Design: Semantic Construction, we discussed … CSS, column design, design, headings, bordered boxes, escaping margins, …CSS3 Multi-Colum Layout Demonstration and Documentation – CSScripting.com
… css structures (like cascading rules). This is ok: .article { column-count: … that some CSS rules may not work after the multi-column layout is applied. …CSS-P 3 Column Layout
TJKDesign.com | Implementing negative margin the other way around. … solution to create a table-less fluid three-column layout appears to be free of: CSS hacks …Center For School Success
CSS News Articles. Helping Your Child Juggle the Demands of School Work (pdf) … At the Center for School Success (CSS) we believe that students need to know how …Magento – Wiki – Creating CSS buttons vs Image buttons
Magento is the open-source eCommerce software solution that promises to … An all CSS-powered button. Sorry, but with v.1.7 this didn’t work. …Vertical Centering in CSS
Vertical Centering in CSS. Yuhu’s Definitive Solution with Unknown Height. Though there is a CSS property vertical-align, it doesn’t work like attribute valign in HTML tables.Vertical Centering in CSS
Vertical Centering in CSS. Yuhu’s Definitive Solution with Unknown Height. Though there is a CSS property vertical-align, it doesn’t work like attribute valign in HTML tables.Build Custom Frameworks Easily with CSS Classes
Generally speaking, I consider full-fledged CSS frameworks to be overkill on all but the most absolutely complex projects or, on the other end of the spectrum, rapid proof-of-concept prototyping. Most people only use a few of the classes that any one CSS framework provides, but then still require their users to download the entire, and largely unused, stylesheet.
However, I still think that the foundation on which CSS frameworks are built — the concept of using classes to simplify layout and standardize design across similar elements — is very much worth investigation. But instead of relying on a one-size-fits-all (snuggie-esque?) solution, I’d encourage you to take a few minutes and build a custom, simplified framework that does exactly what you need it to do.
The Back Story
I recently built a website based on a fairly regular, consistent grid. The content area was 780px wide and would contain six “columns” of content with 12-pixel gutters between each of the columns, though various elements could span one or more of those columns.

Because of the general flexibility of the content combined with the rigidity of the columnar structure, my mind immediately jumped to frameworks as a way to get this design pushed out in a hurry. But in the end, I just couldn’t justify all that overhead, even to create a flexible six-column design. So instead, I decided to write my own mini-framework to do only what I needed.
The Custom Framework
Here’s the basic CSS I ended up writing:
.col {
float: left; }
.gutter {
margin-right: 12px; }
.span1 {
width: 120px; }
.span2 {
width: 252px; }
.span3 {
width: 384px; }
.span4 {
width: 516px; }
.span5 {
width: 648px; }
.span6 {
width: 780px; }
.clear {
clear: left; }
Pretty simple stuff, right? All it contains is nine classes that I can arbitrarily assign to my structural divs to determine how the page will lay out. The first class, “col”, gets assigned to any div I want to behave like a column.
Then each column is given one of the “span” classes (using the benefit of multiple CSS classes to great effect) to determine its width — or as I thought of it at the time, the number of columns the div would span… just like using “colspan” in old-school table layouts.
Next up we have the “gutter” class, which I add to any column that should have a gutter along its right edge (which would be true for all columns except those along the very right edge of my content area). And finally, there’s a “clear” class, just to ensure that my divs behave themselves even if I didn’t entirely fill up the previous “row” of divs.
The XHTML Structure
There’s not much to the XHMTL structure for my custom framework. Essentially, it’s a bunch of divs given two or more of my nine classes to determine its behavior. For example, to create the 4-2/2-1-3 structure I highlighted in the image above, this would be the structure:
<div class="col span4 gutter">Four columns</div> <div class="col span2">Two columns here</div> <div class="col span2 gutter">Two cols and a gutter</div> <div class="col span1 gutter">Only 120px!</div> <div class="col span3">Three columns.</div>
If you’d like to see this sort of custom framework in action, it’s running on the website for the Woodsmith Shop TV show.
One Size Doesn’t Fit All
Now, I’m not saying my framework is the end-all CSS framework and that you should just copy it wholesale into your own project and expect it to work perfectly. The idea here is to take this concept and come up with a custom framework that works perfectly for your needs.
The real take-away lesson here is that for most projects, you don’t need dozens of classes and hundreds of lines of CSS just to create a flexible grid structure. I created mine with just nine CSS classes and it was sufficient to power my six-column grid. I’d be interested to see what other people (namely, you) have come up with along these same lines. Share a link in the comments!
