Difference between revisions of "CSS:Layouts102"
(Added section - A Quick note) |
|||
Line 1: | Line 1: | ||
+ | [[Main Page]] >> [[CP1122|Website fundamentals]] >> [[CP1122Workbook|Workbook]] >> [[CSS]] >> xxx | ||
+ | |||
[[Category:CSS]] | [[Category:CSS]] | ||
+ | |||
=Layout 2: 3 columns= | =Layout 2: 3 columns= | ||
The first stage to approach layouts is to draw a simple diagram of how you would like a web page to be presented: | The first stage to approach layouts is to draw a simple diagram of how you would like a web page to be presented: |
Revision as of 16:30, 27 July 2009
Main Page >> Website fundamentals >> Workbook >> CSS >> xxx
Layout 2: 3 columns
The first stage to approach layouts is to draw a simple diagram of how you would like a web page to be presented:
Stage 2: The Divisions
In order to achieve this layout we need three "divisions"
- IMPORTANT
- A "quirk" of CSS is that in order to achieve this kind of layout, we need to create the divisions in the following order:
- menu, right, content
- A "quirk" of CSS is that in order to achieve this kind of layout, we need to create the divisions in the following order:
HTML Document - no CSS yet
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <HTML> <HEAD> <TITLE>CSS 6</TITLE> <LINK rel="stylesheet" href="style6.css" type="text/css"> </HEAD> <BODY> <DIV id="menu"> This is the menu <UL> <LI>Item 1</LI> <LI>Item 2</LI> <LI>Item 3</LI> <LI>Item 4</LI> <LI>Item 5</LI> </UL> </DIV> <DIV id="right"> Some interesting information in the right-hand column </DIV> <DIV id="content"> <H1>This is the Content of the page</H1> <P>Very interesting content - wouldn't you agree?</P> </DIV> </BODY> </HTML>
Stage 3: Match the divisions to the drawing
Create the following CSS file (and save as style6.css)
#menu {float:left} #right {float:right}
Stage 4: Tidy up the presentation
Let's put some more content in the CSS to improve the appearance.
Modify the CSS to the following:
#menu { float:left; border: 2px solid #0000ff; margin: 0px 0px 0px 10px; padding: 10px; width: 200px; } #right { float:right; border: 2px solid #0000ff; margin: 0px 0px 10px 0px; padding: 10px; width: 200px; } #content { border: 2px solid #0000ff; margin: 0px 240px 0px 250px; padding: 10px; }
The new concepts introduced here are:
- float:right
- margins with 4 sets of numbers
The page should now look something more like this:
Layout 3: 3 rows, 3 columns
A very popular layout is to have a header section, a three column section, and a footer on one page - as per the picture below
Stage 2: The Divisions
In order to achieve this layout we need lots of divisions, one division for the header, one to hold the middle 3 divisions, and one for the footer.
- REMEMBER
- A "quirk" of CSS is that in order to achieve this kind of layout, we need to create the middle divisions in the following order:
- header, middle (menu, info, content), footer
- A "quirk" of CSS is that in order to achieve this kind of layout, we need to create the middle divisions in the following order:
HTML Document - no CSS yet
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <HTML> <HEAD> <TITLE> CSS 7 </TITLE> <LINK rel="stylesheet" href="style7.css" type="text/css"> </HEAD> <BODY> <DIV id="header"> Some company logo or heading </DIV> <DIV id="middlesection"> <DIV id="menu"> This is the menu <UL> <LI>Item 1 </LI> <LI>Item 2 </LI> <LI>Item 3 </LI> </UL> </DIV> <DIV id="info"> Some interesting information in the right-hand column </DIV> <DIV id="content"> <H1> This is the Content of the page </H1> <P> Very interesting content - wouldn't you agree? </P> </DIV> </DIV> <DIV id="footer"> Some company disclaimer or small print </DIV> </BODY> </HTML>
Stage 3: Tidy up the presentation
Let's put some more content in the CSS to improve the appearance.
Modify the CSS to the following:
#header { border: 2px solid #0000ff; padding: 10px; margin: 10px; } #middlesection { padding: 10px; margin: 10px; } #menu { float:left; border: 2px solid #0000ff; margin: 0px 0px 0px 10px; padding: 10px; width: 200px; } #info { float:right; border: 2px solid #0000ff; margin: 0px 0px 10px 0px; padding: 10px; width: 200px; } #content { border: 2px solid #0000ff; margin: 0px 240px 0px 250px; padding: 10px; } #footer { border: 2px solid #0000ff; padding: 10px; margin: 10px; }
The page should now look something more like this:
A Quick note
When creating this layout, if the height of either the left or right columns is more than that of the contents of your page, they will 'spill' over onto your footer. Ensure the height of your contents is greater than the heights of both your side columns to avoid this. (added by Gary Steinert 0709495)
Ready to move on?
When you're happy with the concepts introduced in this chapter, take a look at CSS:Tips for some more tips and tricks you might like to experiment with.
Related Pages
<categorytree mode=pages>CSS</categorytree>