• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Text macht keine Zeilenumbrüche?

T!P-TOP

Mitglied
Ich gebe in einem p, welcher in einem div ist, einen text aus, welchen ich aus der DB abfrage. Sowohl dem p als auch dem Div übergebe ich in der CSS-Datei eine feste width und dennoch ensteht ein sehr langer horizontaler Scrollbalken, da der Text aus diesem 900px breiten Div ausbricht. Woran liegt das? Dieser Fehler tritt bei mir zum ersten mal auf.
Muss ich da nun wordwrap() einsetzten oder wisst ihr vielleicht, womit das zusammenhängt?

Grüße
 
Kann ich nicht sagen. Der Fehler tritt in einem Nachrichtensystem auf. Sprich ich schicke einen Nachricht an einen User, diese Nachricht ist zu lang, und daher ensteht beim Empfänger ein relativ langer Scrollbalken. Welche entities vorkommen kann ich nicht sagen, ich persönlich habe bei der Nachricht keine Entities verwendet.

Der Inhalt der nachricht wird vorher noch mit htmlspecialchars() bearbeitet.

Der Code umfasst ca 300 zeilen Code. Welches Codefragment wäre da wichtig? Die Ausgabe der Nachricht oder der Teil, der sich ums versenden kümmert?

Grüße,
Nico
 
Schwer zu sagen. Es wäre auch möglich, dass eine CSS-Eigenschaft für dieses Verhalten sorgt. Ohne Code und/oder Demoseite kommen wir da glaube ich nicht weiter.
 
Gut, hab es nun hinbekommen. Es lag tatsächlich am htmlspecialchars.

Kann es sein, das htmlspecialchars nur bei MySQL Abfragen verwendet werden sollte bzw bei Ausgaben von Strings?
 
Auf keinen Fall bei MySQL-Abfragen (dort mysql_real_escape_string usw.), bei Ausgabe von Strings nach Möglichkeit immer (beugt XSS vor).
 
Okay - leider aber zu Früh gefreut. Dieser Fehler tritt auf, wenn ich einen Langen Text schreibe, aber keine Leerzeichen verwende. Generell verwendet man ja beim verfassen einer PN Leerzeichen, trotzdem würde ich gerne diesem Fehler vorbeugen. Also, ein Text ohne Leerzeichen wird in einer Schnur ausgegeben, ohne Zeilenumbrüche.

Grüße
 
Dann wordwrap oder so. Oder hinter jeden Buchstaben eine „soft hypen“-Entity (und/oder ein wbr-Element) einfügen. Weiß aber nicht, welche Clients das unterstützen und ob das für deinen Anwendungsfall praktikabel ist.

- Suche nach html "soft hyphen"
 
Habe mich mal in Google etwas schlauer gemacht. Dieses ­ entity funktioniert nicht in allen browsern.
Dann setzte ich wohl lieber auf wordwrap. Mein div ist wie gesagt 900px breit, nach welcher Anzahl von Zeichen sollte ich da den text abbrechen, damit die Nachrichten nie aus den 900px rausschießen - weißt du das velleicht?

Grüße,
Nico
 
Geht nicht wirklich, da es von zig Faktoren wie Schriftgröße, Art der Buchstaben und so abhängig ist. Ich würde vielleicht willkürlich über sowas wie 40 Zeichen nachdenken.
 

Neueste Beiträge

Zurück
Oben