I am somewhat a CSS Zealot as well,  I understand the frustration with the clears etc. However, What I have done is position my left hand menu as an absolute. This has worked fine for my website and allows me to use clears wherever I want without breaking any styles.  I use tables for tabular data and thats it.


For example:

#outer {
 text-align:left;
 background: #c5d5a9;
 width:760px;
 margin:auto;
 border: 1px solid #c5d5a9;
 }
 
 #l-col {
 position: absolute;
 font-weight: bold;
 color: #333333;
 width: 155px;
 border-left: 4px solid white;
 background-color: #F8D583;
 border-bottom: solid 4px white;
 }

#content_container {
 margin-left: 155px;
 border-left: 4px solid white;
 background-color: #eaeff3;
 padding: 5px;
 min-height: 550px;
 }

The drawback is the container (Main body) of the page can be smaller then the menu which I give a min-height for firefox; I have a style sheet which loads if it is IE and it gets a height.... and another style sheet to take away the height if it is IE7.

Anyways, it is just an idea!

On 7/11/06, Darrel O'Pry <dopry@thing.net> wrote:
On Mon, 2006-07-10 at 15:26 +0200, Steven Wittens wrote:
> >
> > I say this even though I am a CSS zealot and have created several
> > non CMS sites which have no tables and would do them no other way.
> > I ended up using a single table in my design because in order to
> > get the footer in the right place the left and right columns were
> > floated.  Once you have floated columns you cannot use clear in the
> > content because the content will then clear the columns which is
> > not what you want.  You need to be able to use clear in the content
> > so that you can float multiple images to one side and have them
> > appear under on another which requires clear.
>
> Non-sense. The piefecta layout and many others (such as drupal.org
> itself) are 100% tableless and can accomodate clears in the content.
>
> Steven Wittens

You may need an additional wrapper around you content to constrain the
clear, or a parent with position: relative. I can't remember.