2 Container mit variabler Breite nebeneinander

Status
Nicht offen für weitere Antworten.

bluewaterpick

Mitglied
Hallo

Ich möchte gerne zwei Container nebeneinander in einen umgebenden Container stellen. Im linken Container befindet sich ein Bild, im rechten Container eine Bildlegende. Nun ist mein Problem, dass ich die Breite des Bildes nicht kenne (die Seite wird über eine Webapplikation generiert). Ich weiss nur, dass das Bild jeweils zwischen 50 und 360 px breit sein kann. Beide Container müssen sich in ihrer Breite also variabel verhalten. Der umgebende Container (#outer) hat eine fixe Breite von 640px.

Was dazu kommt: Im rechten Container befindet sich sehr viel Text. Dieser sollte das Bild nicht umfliessen sondern als Block neben dem Bild erscheinen.

Im folgenden Beispiel ein Versuch von mir mit floats. Leider erscheint der Text unter dem Bild. Wie gesagt kann ich im CMS keine width oder margin-left-Angaben machen, da mir die Breiten nicht bekannt sind. Wenn ich anstelle des floats mit display:inline arbeite, gibt's den Umfliessungseffekt.

Sieht jemand eine Lösung?

Vielen Dank für eure Hilfe
Kathrin




HTML:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
<style type="text/css">
<!--
#outer { width: 640px; border: 1px solid green;}
#img {border: 1px solid red; float: left;}
#legend{border: 1px solid blue; display: block; float: left;}
#floatclear{clear: both;}
-->
</style>
</head>
<body>

<div id="outer">
	<div id="img"><a href="#"><img src="Bildquer.jpg" alt="Bild" width="322" height="240"></a></div>
    <div id="legend">Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und  Konsonantien leben die Blindtexte. Abgeschieden wohnen Sie in  Buchstabhausen an der Küste des Semantik, eines großen Sprachozeans.  Ein kleines Bächlein namens Duden fließt durch ihren Ort und versorgt  sie mit den nötigen Regelialien. Es ist ein paradiesmatisches Land, in  dem einem gebratene Satzteile in den Mund fliegen. Nicht einmal von der  allmächtigen Interpunktion werden die Blindtexte beherrscht - ein  geradezu unorthographisches Leben. Eines Tages aber beschloß eine  kleine Zeile Blindtext, ihr Name war Lorem Ipsum, hinaus zu gehen in  die weite Grammatik. Der große Oxmox riet ihr davon ab, da es dort  wimmele von bösen Kommata, wilden Fragezeichen und hinterhältigen  Semikoli, doch das Blindtextchen ließ sich nicht beirren. Es packte  seine sieben Versalien, schob sich sein Initial in den Gürtel und  machte sich auf den Weg. Als es die ersten Hügel des Kursivgebirges  erklommen hatte, warf es einen letzten Blick zurück auf die Skyline  seiner Heimatstadt Buchstabhausen, die Headline von Alphabetdorf und  die Subline seiner eigenen Straße, der Zeilengasse. Wehmütig lief ihm  eine rethorische Frage über die Wange, dann setzte es seinen Weg fort.  Unterwegs traf es eine Copy. Die Copy warnte das Blindtextchen, da, wo  sie herkäme wäre sie zigmal umgeschrieben worden und alles, was von  ihrem Ursprung noch übrig wäre, sei das Wort &quot;und&quot; und das  Blindtextchen solle umkehren und wieder in sein eigenes, sicheres Land  zurückkehren.</div>
    <div id="floatclear"></div>
</div>
</body>
 
Hi.
Nun ist mein Problem, dass ich die Breite des Bildes nicht kenne (die Seite wird über eine Webapplikation generiert). Ich weiss nur, dass das Bild jeweils zwischen 50 und 360 px breit sein kann. Beide Container müssen sich in ihrer Breite also variabel verhalten. Der umgebende Container (#outer) hat eine fixe Breite von 640px.
Da wirst du wohl mit einem Script die Bilddimension ermitteln müssen, um anschliessend dem rechten Spaltenblocken das "Restmaß" für width, oder seinen entsprechenden linken Außenabstand zuordnen zu können.

mfg Maik
 
Hallo Maik
Dann werde ich mit dem Entwickler schauen, dass er dem rechten Container die Breite oder die margin-left mitgibt.
Ich dachte, vielleicht gäbe es noch einen CSS-Trick ;-)
Vielen Dank jedenfalls

Hallo
Inzwischen ist mir noch in den Sinn gekommen, dass ich eine gute alte Tabelle einsetzen könnte...
 
Status
Nicht offen für weitere Antworten.
Zurück