Vertikale Ausrichtung von Text in einer Tabelle im IE fehlerhaft

  • Hallo,


    ich habe ein kleines Problemchen in einer Tabelle bzw. in einer Spalte davon, allerdings nur im IE.


    Links in der Spalte steht ein Text, in der rechten Spalte ebenso. Der linke Text ist vertikal genau mittig angeordnet, der rechte allerdings weiter oben, was doch etwas unschön aussieht. Ich muss dazu sagen, ich nutze hier php und zudem <pre> in der rechten Spalte, um Text mit Zeilenumbrüchen anzeigen lassen zu können, da die Einträge aus einer SQL Datenbank ausgelesen werden. Vielleicht wird ja ein Zeilenumbruch automatisch angehängt, auch wenn nicht vorhanden? Jedenfalls nur im IE...


    hier mal mein Code Schnipsel


    PHP
    echo "<tr bgcolor='#E8E7E6'><td width='20'><img src='...' alt=''></td>
    <td width='230'>&nbsp;<b>Bemerkungen</b></td>
    <td width='300'><pre>$bemerkung</pre></td></tr>";


    Im Firefox dagegen siehts ganz toll aus ;)


    Achja, für pre habe ich in meiner .css auch noch white-space: pre-wrap; definiert unter anderem, aber das dürfte damit nichts zu tun haben.

  • Kannst du mal den Quelltext des Ausgabefiles posten?
    Auch das CSS zu der Tabelle, wo die Ausgabe drin ist, wäre interessant.


    Ansonsten setz <td> mal das Attribut valign="middle"

    Some experiences only impress you once.
    The special ones do it again and again.

  • Hallo,


    valign hat leider keine Auswirkungen.


    PHP
    <tr bgcolor='#E8E7E6'><td width='20' height='18'><img src='./bilder/paste_plain.png' alt=''></td>
    <td width='230'>&nbsp;<b>Bemerkungen</b></td>
    <td width='300'><pre>Fa(s)t Food</pre></td></tr>


    Die revelanten Dinge in der CSS sind folgende



    Den pre part in der CSS habe ich irgendwo aus dem Netz übernommen, weil ich ohnehin schon froh war, endlich die Lösung dafür gefunden zu haben, dass mir Texte ohne Zeilenumbruch die Seite immer nach rechts haben scrollen lassen ;) Vielleicht liegt der Hund ja auch hier begraben...


    Edit: Ok, auch ohne den pre Absatz im CSS ist mein Problem noch da

  • Hast du den PRE-absatz im htm-file oder im css-file gelöscht?


    Versuch folgendes:
    - im HTML-File weglassen
    - im CSS File weglasse, allerdins den Tag im HTML stehen lassen


    Ich probier auch mal


    Gruss

    Some experiences only impress you once.
    The special ones do it again and again.

  • Ohne pre im html teil ist das Problem durchaus weg. Nur weiß ich dann nicht mehr, wie ich mir meine Variable mit den Zeilenumbrüchen anzeigen lassen kann. Denn es handelt sich dabei um eine Textarea, in die die User durchaus mehr - und auch mehrzeilig - eintragen. Ohne pre wird das ganze leider nur ohne Umbrüche angezeigt.

  • Probier mal den <pre>-Tag mit einem <p>-Tag einzufassen. Das sollte dann funktionieren:
    <td width='300'><p><pre>Fa(s)t Food<pre></p></td>

    Some experiences only impress you once.
    The special ones do it again and again.

  • Funktioniert leider auch nicht :(


    Habe im "original" noch ein einzelnes <td> für ganz links, nur ein paar px Breit, als optischer "Abstandshalter", hab das aber der Einfachheit halber oben im Quelltext weggelassen. Doch das dürfte sowieso keinen Unterschied machen, der IE mag mich einfach nicht....


    Edit: Hab jetzt mal spaßhalber ein <br> vor das pre gebaut. Im IE passt dann die Ausrichtung, aber im Firefox eben nicht mehr. Baue ich vor beide Spalten ein <br> passt zwar die Ausrichtung zueinander in beiden Browsers (außer dass im Firefox oben eine leere Zeile dazukommt) NUR in mehrzeiligen Feldern, wenn ich das richtig gesehen habe. Ist der rechte Spalteneintrag einzeilig, passts wieder hinten und vorne nicht. Ach weh...

  • Hmm, also wenn du ja lange Einträge hast, ist die Spalte ja sowieso viel Länger als die andere vornedran.
    Es ist ja wichtig, dass diese eingemittet ist.


    Ansonsten:
    Dieses Script hier:


    funktioniert bei mir, d.h. Fast Food steht in der Mitte und ist sauber ausgerichtet.

    Some experiences only impress you once.
    The special ones do it again and again.

  • Stimmt, dein Code geht. Mir ist aber etwas daran aufgefallen. Du schließt den <pre> tag nicht, sondern machst einfach noch einen, statt </pre> zu nehmen. Wenn ich es so mache wie bei dir, also ohne zu schließen, ists bei mir auch richtig ausgerichtet, ansonsten nicht. Ist ja komisch...

  • Hmm, das wäre dan wohl ein Fehler... Eigentlich sollte der geschlossen sein. :)


    Aber dann versuchs mal ohne zu schliessen, ob das dann mit der Ausgabe klappt oder nicht - ich kann mir vorstellen, dass da eventuell Probleme auftreten.

    Some experiences only impress you once.
    The special ones do it again and again.

Jetzt mitmachen!

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