Possible methods for defining position of next block-level or inline element:
- Normal flow:
- Boxes positioned relative to the previous box
- Float
- Laid out according to the normal flow then floated
left or right as required.
- Positioning
- Position property defines position relative to containing
block or viewport/page depending on media
Defining Multi-Column Layouts:
-
Floating areas left and right with main content having left and right margins
-
Position the left and right columns with main content having left and right margins
-
Single column with negative margins into which floated objects flow.
See CSS Primer for details. Mainly used if you want the main content before the navigation content
Refinements that may be necessary:
- Use min-width or max-width to constrain the bounds of a fluid layout
- Having backgrounds to columns complicates the procedure
- Using % worked incorrectly with old browsers
- On the whole, these methods work fine in Firefox, Opera, Chrome, Safari and IE8