Moin!
Zur info:
In meiner Seite wird jedlicher Text aus der Datenbank gelesen und in meine seite eingebunden. die leerzeichen sind alle mit codiert, was aus programmtechnischen gründen leider nicht anders zu verwirklichen war.
"Programmtechnische Gründe" - dieser Begriff ist, solange du uns nicht die Gründe benennst, einfach nur eine Tarnung für die Tatsache "Mir ist leider nichts besseres eingefallen, nur diese dumme Lösung".
Da du eine Datenbank im Hintergrund hast, bin ich mir 100% sicher, dass deine Vorgehensweise derzeit in der Tat suboptimal ist und du viel eher beim grundsätzlichen Vorhandensein der ansetzen solltest, und nicht hinterher versuchst zu reparieren, was du vorher kaputt gemacht hast.
das Problem:
Leider wird darum der text am zellenende der tabellen nicht umgebrochen und sprengt mir dadurch jedliches layout...
da der text in verschiedenen teilen der seite angezeigt werden muss kann ich aber keine <br> s fest in die datenbank schreiben.gibt es da eine abhilfe?
Wozu brauchst du die wirklich? Wenn das nur aus Formatierungsgründen ist (du hattest es angedeutet: Mehrfache Leerzeichen sollen wirklich so ausgegeben werden - warum eigentlich dies?), dann solltest du deine Strategie ändern.
Du hast mehrere Optionen:
1. Du kannst grundsätzlich normale Leerzeichen (auch mehrere) in die Datenbank schreiben, und bei der Ausgabe der Leerzeichen dann das Vorkommen von doppelten (oder noch mehrfachen Leerzeichen) ersetzen durch . Ein regulärer Ausdruck sollte das relativ einfach erledigen.
2. Unter Umständen besser: Wenn du den Text innerhalb von <pre></pre> schreibst, werden alle normalen Leerzeichen auch tatsächlich angezeigt, nicht nur eines.
3. Auch mit CSS könntest du (aber leider erst ab Mozilla/NS6 bzw. IE 6) jedes beliebige Element zum pre-Verhalten umformatieren: http://selfhtml.teamone.de/css/eigenschaften/ausrichtung.htm#white_space
- Sven Rautenberg
"Bei einer Geschichte gibt es immer vier Seiten: Deine Seite, ihre Seite, die Wahrheit und das, was wirklich passiert ist." (Rousseau)