SHo: DIVs nebeneinander - Positionierung

Beitrag lesen

Hallo zusammen,

ich habe folgendes Problemchen, für dass es selbstverständlich schon in allen Sprachen diverse Diskussionen im www gibt, ich aber seit gestern Mittag die Lösung leider nicht finden kann:
<strong>Aufgabe:</strong>
-Eine Menüleiste aus Logo und Balken als Bild in 970px mit festgelegter Breite soll immer mittig auf der Seite platziert sein.
-damit der Balken soll links und rechts fortgeführt werden, dazu eine 1px-Grafix per repeat-x eingesetzt, die sich automatisch immer dem Browserfenster/der Auflösung anpasst.

<strong>Lösung bisher:</strong>
-1. Lösung:
Eine Tabelle mit 3 Spalten! Das klappt natürlich ohne viel css etc. durch die Eigenschaft der Tabellenzellen sich fein anzupassen, aber natürlich will der Auftraggeber keine Tabellen
2. Lösung:
Einem div mit Background-repeat mit der 1px-Grafik die Breite width:100% gegeben und per z-index hinter das per margin-left:auto und margin-right:auto positionierte Bild gelegt. Das klappt ganz wunderbar!!Auf einem Minibildschirm sieht man halt nur das Bild, wenn man einen Monsterschirm hat breitet sich der Balken schön aus.

<strong>gewünschte Lösung:</strong>
Fragt nicht warum, aber der Kunde will das mit 3 nebeneinander gefloatetetn divs gelöst wissen. Grrr.
<strong>Problem:</strong>
3 divs floaten ok. Aber 1. WIE sage ich dem mittleren trotz seiner Eigenschaften, dass er das margin-left, margin-right nicht ignoriert. 2. Wenn ich die 3 gefloateteten Divs seitenmittig platziere, dann befüllen sich ja die beiden äußeren nicht automatisch bis zum rand, wenn ich ihnen gar keine Breite gebe (width:auto geht nicht).

Zu umständlich??? :-)
Ich bitte um Enträtselung

/*HEADER************************************/  
#header{  
	width:100%;  
	height:126px;  
	border:solid 2px yellow;  
}  
#leftspace{  
	float:left;  
	height:126px;  
	width:auto;  
	background:url(../img/redstripe.png) repeat-x;  
}  
#menu{  
	float:left;  
	width:970px;  
	height:126px;  
	margin-left:auto;  
	margin-right:auto;  
	background:url(../img/menu.png);  
}  
#rightspace{  
	float:left;  
	height:126px;  
	width:auto;  
	background:url(../img/redstripe.png) repeat-x;

(leftspace, rightspace und menu liegen in header)