Homepage selbermachen 7.852 Themen, 35.619 Beiträge

Text bricht nicht korrekt um ...

BlackWidowXP / 3 Antworten / Baumansicht Nickles

Hi Leute!

Ich hab nen kleines Problem und mir fällt diesbezüglich keine Lösung ein ...
Ich habe eine Website, die ein 3 Spalten-Layout besitzt. In der linken und rechten Spalte befinden sich diverse Navigationen und und und, in der mittleren der eigentliche Inhalt.
Das ganze ist über eine Tabelle realisiert mit einer Zeile (tr) und drei Zellen (td\'s). Die beiden äußeren habe eine fixe Breite, die mittlere skaliert ja nach Fenstergröße.
Aber dabei gibt es ein Problem:
Befindet sich in der mittleren Spalte ein Bild, das breiter ist als die Spalte selber, dann wird dieses nicht komplett angezeigt (ist ja auch richtig so), aber der restliche Text bricht auch nicht gemäß der aktuellen Fenstergröße um!
Dass ein Bild nicht umbrechen kann ist klar, aber der Text sollte das eigentlich tun! Aber er bricht so um, als ob die Spalte die komplette Größe HÄTTE, die sie bräuchte um das komplette Bild anzuzeigen. ERGO: Auch der Text wird abgeschnitten und somit unlesbar!

Daraufhin hab ich ein wenig experimentiert. Wenn ich (testweise) dieses Phänomen nur im

ausprobiere funktioniert es. Das Bild wird abgeschnitten, aber der Text bricht immer noch lesbar korrekt um!
Sobald ich das ganze in eine Tabelle packe gehts nicht mehr ...

Gibt es da mir noch nicht bekannte CSS-Styles oder andere Möglichkeiten das zu verhindern?? Das Bild kann ruhig abschneiden, nur der Text muss IMMER lesbar sein.

Ich wäre für Eure Hilfe SEHR dankbar!
Vielen Dank im Voraus,

Black Widow
bei Antwort benachrichtigen
Maxx Stone BlackWidowXP „Text bricht nicht korrekt um ...“
Optionen

Hi BlackWidowXP,

"Befindet sich in der mittleren Spalte ein Bild, das breiter ist als die Spalte selber, dann wird dieses nicht komplett angezeigt (ist ja auch richtig so), (...)"

Also bei Verwendung von HTML ist das nicht richtig bzw. "normal". Da muss noch was anderes im Spiel sein. Framesets? CSS? Oder das Bild ist als "Hintergrund" der Tabelle deklariert.
Wenn du den Code postest hilf das doch etwas ;-)

"Wenn ich (testweise) dieses Phänomen nur im ausprobiere funktioniert es."
Hä? Wiebidde?

"nur der Text muss IMMER lesbar sein.":
Lass CSS ganz weg ...

Gruß
Maxx Stone

bei Antwort benachrichtigen
BlackWidowXP Nachtrag zu: „Text bricht nicht korrekt um ...“
Optionen

Hi Maxx!

"Wenn ich (testweise) dieses Phänomen nur im ausprobiere funktioniert es."
huch ... da hat er mein <body> weggemacht! Wusste nicht, dass er hier den Text einfach so wieder anzeigt ohne durch HTML-Entities zu ersetzen ...

Also zu CSS...
Ich habe wie beschrieben eine Tabelle mit einer Zeile und drei "Spalten" also Zellen. Die beiden äußeren habe eine Breite von 200px. Die mittlere sollte eigentlich immer die restlich Größe bekommen.
Weil HTML aber standardmäßig die tatsächliche Spaltengröße vor der manuell gesetzten bevorzugt, habe ich die Taballe mittels table-layout:fixed; fixiert. Leider geht das nur für ganze Tabellen und nicht für einzelne Spalten (zumindest wüsste ich da nichts von).

Habe mittlerweile noch vielen ausprobiert. Aber nichts hat so funktioniert wie ich mir das vorgestellt habe!
Nochmal mein Ziel:
Linke Spalte 200px FIX!
Rechte Spalte 200px FIX!
Mittlere Spalte - restliche verbliebene Spaltenbreite

Den Quelltext zu posten macht glaub ich nicht so viel Sinn, weil ich das in mehreren CSS-Dateien verteilt hab und das Layout ansich (ist für nen CMS). Das wird hier zu viel ...

Bestehen denn sonst noch Fragen?

Ansonsten wäre ich um weitere Hilfe SEHR dankbar!

BlackWidow

bei Antwort benachrichtigen
Maxx Stone BlackWidowXP „Text bricht nicht korrekt um ...“
Optionen

Hi BlackWidow,

"Weil HTML aber standardmäßig die tatsächliche Spaltengröße vor der manuell gesetzten bevorzugt, (...)"
"HTML" bevorzugt da IMHO nichts. HTML ist (zum Glück) flexibel und der jeweilige BROWSER interpretiert das nach den Vorgaben der Browser-Programmierer ...
width="200" heißt de facto "Spaltenbreit=mindestens 200"

Okay, lass CSS erstmal weg. Versuch folgendes:
(tr)
(td width="200" valign="left")
(table width="200")(tr)(td)Spalte1(/td)(/tr)(/table)
(/td)
(td)
(/td)
(td width="200" valign="right")
(table width="200")(tr)(td)Spalte3(/td)(/tr)(/table)
(/td)
(/tr)

Mit dem Bild in der Mitte: Was soll das werden? Hintergrund? Feste oder flexible Grösse? ...

HTH
Maxx Stone

bei Antwort benachrichtigen