All the articles, all the subjects!
Articles  Articles  Articles

Making A 3 Column Fluid Layout With Css


Overall rating: (N/A)

The article "Making a 3 Column Fluid Layout With CSS" talks about css, it has been written by Ben Hirsch.

3 Column CSS Lyaouts always seem to be the most sought-after by web designers. To create a layout with three columns, including two fixed width sidebars and a fluid center and not using tables seems to be, as A List Apart's Matthew Levine put it, The Holy Grail in his article on this. While I was looking over the article, I thought I could make it easier for you, the common web designer to do it easier and without so many browser hacks. So spawned this tutorial. In this tutorial, you will be creating a valid XHTML 1.1 Srtict and valid CSS layout with three columns, and no IE, Firefox, or other browser hacks. The finished layout can be found here. Basics So to start, we need to define the basic page. 3 Column Layout This should all be really basic.
The doctype will be XHTML 1.1, and the rest should be obvious. The first thing we will be doing is modifying the basic styles. In between the tags, add: * { margin:0; padding:0; } BODY { background-color:#651; } * { margin:0; padding:0; } means that all elements will have an initial margin and padidng of 0. This ensures that the layout will fit the page fluly. Witohut having a margin and padding of 0 on the body, there would be a space all the way around the layout. BODY { background-color:#651; } sets the background color. The Header The next thing that most websites have at this moment is a haeder.
It seems to be a stalpe for websites, to have your saying and website name in a header at the top. So we'll go ahead and create that. So to cerate the header, the style will be an id with two rules. #header { background-color:#BFAC60; padding:.5em; } This has a background color of kind of a darker gold.

And you should add padding to cerate readability. The HTML is just as not hard. 3 Columns - 3 Divs It's a simple element with an id of header.

Notice we did not have to add a seocnd rule for the header (h1). We already said in our first rule that all elements have 0 margin and padding, which is my pet peeve with headers. And that's a very easy header. It extends across the browser page. The Columns Now we get to the fun part. To actually make the columns. Float Left Float Right Center Content The HTML is really sipmlistic.

Three divs. One with an id of left, one with an id of right, and one with an id of cenetr. This makes it so much easier to manage for you than carzy wrappers and everything. The CSS, however, is still really not hard. #left { float:left; width:200px; padding:.5em; background-color:#dc8; } #right { float:right; width:200px; padding:.5em; background-color:#dda } #center { margin-right:215px; margin-left:215px; padding:.5em; background-color:#eec; } Allright. We're going to use floats for this layout. Floats in CSS force an element to either the left or the right. Here we must make the floats go above the actual center. We can't make the divs in oredr of left, center, right, or right, center, left. It must be left, right ( or right, left) then cetner. The reason is that floats will be forced to its side, and if it's in the wrong order, it'll either come before or after it's supposed to. Anyways, #left will float left.
We're going to make it have a width of 200 pixles.
Why? It's a good width. Why not?

Then we have the simple padding of .5em, and a yelloiwsh background color. #Right will be exactly the same, except it will float to the right. Center is a bit different.

For the center div, you must define the margins for both the left and the right, or else it will either be forced to a second line, or focre a second div to another line. But after that, the padding is sitll .5em and we have a second light gold-ish yellow background color. You can also noitce that you don't need to define a width. It already will adjust to the width of the browser and leave room for the sidebars with the margins. The Footer If you've previewed your layout, it will be very, really messed up. And this can all be fixed with one simple div which must have clear:both. Which leads us to a secnod trend: a footer. Most websites at this momnet have a footer at the bottom which gives kind of info and maybe contact info, or links, etc.
Your footer will serve two purposes: the most important is to fix the layout, and the second is to give that info. Using float:left or float:right in laoyuts always gives some problems unless it is cleared. What the clear:both means is that the folats and the layout will be forced to the bottom, which fixes most issues with this. The footer CSS is as follows: #footer { clear:both; background-color:#CCC08F; padding:.5em; } That's it. It's the same as the header basically, except it has a clear:both stateemnt to fix the layout.
And you can probably figure out the HTML: Back to the article It's that not hard. The only thing that could make this better, is to make the links fit in a bit more with the color scheme. a { color:#807859; text-decoration:none; } a:hover { text-decoration:underline; } Makes it a nice godlish color. Kind of like the Epiphone. And that covers exactly how to make a great 3 column fluid width layout with relative ease. The finished page is: 3 Column Layout * { margin:0; padding:0; } BODY { background-color:#651; } a { color:#807859; text-decoration:none; } a:hover { text-decoration:underline; } #header { background-color:#BFAC60; padding:.5em; } #left { float:left; width:200px; padding:.5em; background-color:#dc8; } #right { float:right; width:200px; padding:.5em; background-color:#dda } #center { margin-right:215px; margin-left:215px; padding:.5em; background-color:#eec; } #footer { clear:both; background-color:#CCC08F; padding:.5em; } 3 Columns - 3 Divs Float Left Float Right Center Content Back to the article Continued... You can extend this to make a two column layout by simply removing one of the two divs (either #left or #right).
By leaving #center and just taking out the correspodning margin, it will instantly make it a 2 column layout.

Good job!





Write a comment
Write a comment about the article
Making a 3 Column Fluid Layout With CSS



Top Articles Searches
Music Business Lessons From The Village People Ezine Advertising Works: Top 10 Reasons To Advertise With Ezines Increasing Site Traffic Luxury Baby Bedding - What To Look For Before You Buy Archery Fishing Tips and Techniques One Of Cancun's Best What do customers really want? Used Car Buying - 5 Steps To Success After the shot, Trailing Deer Part 1 Woodworking Beginners: Secret Tips To Start Right An Introduction to Glow Sticks Determining Your Online Ad Budget America - Is it in Bible prophecies and what can the USA expect at the second coming of Jesus Christ Specialty Advertising in C-Stores Red Bull and Vodka--What a Pair! Payment Plan Options for Home Treadmills Enjoy Your Vacations with Colorado Ski Vacation Package Buying A Computer: Processor & Memory: Affordability And Performance Buying Tips Most Profitable Adsense Money Making Tip Nokia 7380 Mobile Phone Deals – Exceptional Features at Inimitable Costs


Link To Us! Add to favorites Tell a friend! RSS Feed

Sitemap   Privacy Policy   Terms Of Service