kein Zeilenumbruch bei <pre> und <code>

  • Hallo Community,

    wie bringe ich WP bei, bei
    [FONT=courier new]<code>[/FONT] und [FONT=courier new]<pre>[/FONT]
    kein automatischer Zeilenumbruch erfolgt, und die Coderzeile/Ausgabezeile auf einer Linie erscheint! Egal ob ein Leerschlag eingegeben wurde!

    z.B. hier bei Punkt 12 oder 14 erscheint eine simple, horizontale Scrollbar!

    Gruss B-52

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Das liegt wohl nur an Deiner CSS. Für pre-Bereiche verwendest Du overflow:auto, was erst einmal richtig ist, doch eventuell ärgert das white-space: pre-wrap und verhindert bei zu wenig Platz, dass overflow:auto richtig greift. Habe es aber nicht getestet.

  • Das liegt wohl nur an Deiner CSS. Für pre-Bereiche verwendest Du overflow:auto, was erst einmal richtig ist, doch eventuell ärgert das white-space: pre-wrap und verhindert bei zu wenig Platz, dass overflow:auto richtig greift. Habe es aber nicht getestet.

    du bist genial. [COLOR=#008000]DANKE! [/COLOR]das war es auch. Lösche

    Code
    white-space: pre-wrap;


    und es funktioniert!

    PS: irgendwie ist mir das jetzt peinlich... wie konnte ich das übersehen?

  • Melewo - die Lösung scheint jedoch nur auf Iceweasel und deren Derivate zu funktionieren! Auf dem IE 10 wird keine Scrollbar angezeigt. Böses Windows! (desshalb benutze ich kein Windows)

  • Ich arbeite nur mit dem FF unter Windows und wenn ich da mit dem Inspektor nach den Regeln suche, so zeigt der mir an, dass da noch word-wrap: break-word und hyphens von

    auf

    vererbt wird. Möglich das die Browser damit etwas unterschiedlich umgehen. Weiß jetzt im Augenblick nicht einmal, wie man word-wrap in pre-Bereich verneint oder zur Not mit !important überschreibt, außer mit der Angabe 'normal'. Mit white-space wäre es wohl auch so möglich gewesen:

    HTML
    white-space: nowrap; 
    
    
    /* oder notfalls mit */
    white-space: nowrap !important;

    Doch hyphens habe ich entfernt. Du könntest es mit

    HTML
    word-wrap: normal;
    
    
    /* oder mit */
    word-wrap: normal !important;

    für pre probieren. Für ältere IE ist es zusätzlich wichtig, dass auch einige Anpassungen in der css/ie.css vorgenommen werden. Zusätzlich habe ich eine kleine Funktion geschrieben, die da einiges in pre-Bereichen nach meinen Vorstellungen anpasst, doch die benötigst Du zur Zeit noch nicht bei Deinen Beispielen, wie es ausschaut. Von CSS3 kenne ich bisher auch nur die Regeln, über die ich stolpere und bin kein Experte in Sachen CSS.

    Bei mir sieht es zumindest so aus und ich sah bisher noch keine Unterschiede in den drei Browsern, die ich zur Kontrolle benutze:

    Einmal editiert, zuletzt von Melewo (3. August 2013 um 11:52)

  • So, nun habe ich gerade noch einmal einen Test mit dem 'Opera Mobile Emulator' gemacht, da halten die pre-Bereiche ebenfalls, wie es ausschaut. Werfe einfach einen Blick auf die Beispiel-Seite, wenn die bei Dir im Browser anders ankommen sollte, bin ich sicherlich etwas geknickt. Wenn nicht, suche Dir aus meiner CSS die Regeln heraus und passe die Farben an und gut sollte es sein.

  • Melewo
    vielen Dank für Deine Mühe!
    [FONT=courier new]white-space: nowrap;[/FONT] wäre zwar die Lösung, wenn der Zeilenumbruch innerhalb von [FONT=courier new]<pre> [/FONT]mit [FONT=courier new]<br />[/FONT] erzwungen wird. Leder entfernt dieser Befehl jede Leerzeile. Bei einer Auflistung von Partitionstabellen sieht das dann komisch aus...

    Das entfernen von

    Code
    white-space: pre-wrap;

    bracht jedenfalls auf einigen Browsern die Lösung.

    Nochmals vielen Dank für Deine Mühe. Falls ich doch noch eine akzeptable Lösung finde, werde ich sie posten!

    Gruss B-52

    Einmal editiert, zuletzt von B-52 (3. August 2013 um 14:22)

  • Mal eine ganz dumme Frage von mir, wie fügst Du denn den Inhalt für pre ein?

    Also, ich nutze eine Export-Funktion vom Notepad++, NppExport to HTML und da diese mir noch nicht richtig gefällt, rufe ich die exportierte Datei einmal kurz in einem Browser mit einem eigenen Script auf, welches die Styles durch die von mir verwendeten CSS Klassen ersetzt.

    Probleme gab es mit WP schon, da zum Beispiel http:// in Kommentaren umgebrochen wurde. Um das zu verhindern, bzw. auch noch für ein paar andere Kleinigkeiten, hatte ich mir, wie bereits erwähnt, eine kleine Funktion geschrieben.

    Ich lasse jetzt hier im Code das Semikolon ; hinter #039, #091 und #093 weg, damit keine Umwandlung erfolgt, es gehört jedoch zwingend dazu.

    Die ersten beiden sind für gequotete Anführungszeichen, die nächsten beiden sind für die Klammern von Short-Tags, damit die Tags angezeigt und nicht die Funktion aktiviert wird, und [noum]http://www.example.com[noum] bedeutet halt, kein Umbruch davor und dahinter, was eigentlich nur für Kommentare gedacht ist.

    Du könntest es jedoch auch einmal mit einem Plugin für Code probieren.

    Einmal editiert, zuletzt von Melewo (3. August 2013 um 15:01)

  • So, nun hat es mir gereicht, soll heißen, es hat mir keine Ruhe gelassen und ich habe mir Deine eine Seite (Theme Twenty Thirteen) mit Beispiel-Code 13. als HTML-Seite abgespeichert, zusammen mit der CSS. Und wenn ich die Vererbung von word-wrap mit !important überschreibe, dann wird das Listing 13. Sauber und ordentlich im FF, Chrome und IE angezeigt, der Scrollbalken bildet sich und alles wird so dargestellt, wie man es von einem ordentlichen Listing erwartet.

    Wenn Du das so abänderst, dann funktioniert das auch, zumindest bei mir unter Localhost.

  • Das scheint sogar ohne !important zu halten, kannst Du aber im Zweifel mit !important belassen. Wichtig ist ja nur word-wrap auf normal zu setzen, damit kein ungewollter Umbruch erfolgt.

    Nur frage ich mich, warum das bei mir bisher nicht ärgerte.

  • Das scheint sogar ohne !important zu halten, kannst Du aber im Zweifel mit !important belassen. Wichtig ist ja nur word-wrap auf normal zu setzen, damit kein ungewollter Umbruch erfolgt.

    Nur frage ich mich, warum das bei mir bisher nicht ärgerte.

    Danke! Genau das was ich wollte. Echt jetzt, Du bist genial.

    Gruss B-52

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!