|
When we at Ecommerce Partners (http://www.ecommercepartners.net) started using
divs rather than table for web page layout, the most daunting experience
for me was how to create columns using divs. So, here is the solution for
all those website developers who are struggling to use divs for web page
layout.
The div tag can be defined as the division in a web page. It is a block level
element. This implies that the default behavior of divs is to stack up
one above the other. This serves the purpose of using divs for a simple
web page layout where all the elements stack one above the other. When we have
a columnar web page layout (which happens to be the most common layout for majority
of the websites), we need to know how to use divs to create two or more
columns in a web page.
The following method will cause divs to stack up side by side rather
than one above the other.
Lets say that we have two divs:
{div id=div1}{/div}
{div id=div2}{/div}
(in order to display it right on a browser "{" has been used in place
of "<" in the above example)
Now, in the stylesheet declare the following rules.
#div1 { float:left; width:50%;}
#div2 { marging-left:50%; width:50%;}
The result will be two columnar divs. You may use this method to create
as many columns as needed on the web page.
Now, if you need these two columnar divs to expand vertically equal to
each other you can use the following method.
First create a background image that if tiled vertically will look like two
columns. For reference, please visit http://www.ecpgroup.net. Here, background
image (http://www.ecpgroup.net/images/content_bg.gif) has been used in the container
div that holds the body and the footer of the web page.
This background image must be 1 pixel high and as wide as the container that
contains all the elements of your web page.
In the html document:
{div id=container}
{div id=div1}{/div}
{div id=div2}{/div}
{/div}
(in order to display it right on a browser "{" has been used in place
of "<" in the above example)
Declare the following rules in the stylesheet:
#container { background: url(the_Url_Of_The_Background_Image.gif) repeat-y 0%
0%; }
#div1 { float:left; width:50%;}
#div2 { marging-left:50%; width:50%;}
The result will be the appearance of two columnar divs expanding vertically
equal to each other. So, although we cannot extend a div vertically equal to
another div, we can make it appear so. This is exactly the method used at http://www.ecpgroup.net.
About the Author:
Shruti Gupta works for ECommerce Partners.net (http://www.ecommercepartners.net)
- a website design company in New York. We pride ourselves in developing search
engine friendly and standard compliant websites. Email: info@ecommercepartners.net |