Am Rande der Verzweiflung

  • Hallo Leute,
    ich bin jetzt schon ungefähr 40 Minuten am selben Problem.
    Es geht um Tabellen. Normal sieht alles nach meinem Skript so aus (nur schemahaft):[attachment=1]<!-- ia1 -->Unbenannt.PNG<!-- ia1 -->[/attachment]
    Die zweite Zeile hat nur ein td mit colspan="4".


    Alles schön und gut, nur mein Problem ist ein wenig schwieriger zu erklären: :lol:
    Ersteinmal der Code:


    Ein simples Nachrichtenpostfach, jedoch ein Problem.


    Code
    <script type="text/javascript">
    function openmessage(rcid) {
    document.getElementById(rcid).style.display="block";
    }		
    </script>


    Code
    tr.message {
    display: none;
    border: 1px solid #393939;
    }


    Soooo, hier noch ein Bild in dem man das Problem erkennen kann:
    [attachment=0]<!-- ia0 -->Unbenannt2.PNG<!-- ia0 -->[/attachment]


    Die Zeile, in der der Inhalt der Nachricht angezeigt wird, soll sich über 4 Spalten erstrecken.
    Ich habe doch <td colspan="4">...</td>!!!


    Warum funktioniert das nicht?


    Ich hoffe, ihr habt erkannt, dass das ganze mit Javascript und display dynamisch ist.


    Mit freundlichen Grüßen,
    Philipp E.

  • Das verwundert mich.. das wäre dann zum ersten mal etwas, wo der IE wirklich etwas richtig falsch interpretieren würde.


    Eine Tabelle besteht in HTML aus Reihen und Zellen.
    Den Zellen können wir dabei eine Besonderheit sagen und zwar, dass sie der Platz der eigentlich vorher in der Tabelle für mehrere Zellen vorgesehen war einnehmen dürfen.

    Code
    _________________
    | 1 | 1 | 1 | 1 | = Head der Tabelle
    ?????????????????
    _________________
    |   2   |   2   | = Tabellen Zellen mit einem colspan von 2
    ?????????????????
    _________________
    | 1 |     3     | = Eine normalle Zelle und eine mit colstpan 3
    ?????????????????


    Warum das bei dir nun nicht Klappt ist relativ einfach: Du versuchst der Reihe theoretisch mehr Zellen zu zu weisen, als wie Möglich sind.

    Code
    _________________
    | 1 | 1 | 1 | 1 | = Head der Tabelle
    ?????????????????
    _________________
    |   2   |   2   |  2  | = Tabellen Zellen mit einem colspan von 2
    ?????????????????
    _________________
    |   2   |     3     | = Eine normalle Zelle und eine mit colstpan 3
    ?????????????????

    Schaut nicht.. all zu richtig aus, oder? O.o


    Übrigens hat das einen Grund, dass die Dinger Reihen heißen.
    Wobei das wenn du mich fragst ja übrigens nicht nach Inhalt aussieht, der Tabellarisch angeordnet gehört, sondern eher in divs :roll:

  • Nein, deine Tabelle besitzt nur 5 Spalten.
    Um Ihr zu sagen, dass eine Zelle den Platz von mehreren Zellen einnehmen soll, brauchst du einfach mehr Zellen :D
    Wobei as was du da machst theoretisch semantisch vollkommen inkorrekt ist.
    Den jede Zelle gehört in die Selbe Reihe wie die anderen Zellen der Reihen, außerdem handelt es sich hier nicht um Tabellarischen Inhalt sondern um Design.

  • Entweder du oder ich kapieren gerade gar nichts (eher das erstere).


    table = Tabellenbasis
    tr = Zeile
    th = Spaltenüberschrift
    td = Zelle


    Wenn man jetzt folgendes macht:


    Wo sind da jetzt 5 Zellen (td) in einer Zeile (tr)??


    Mit freundlichen Grüßen,
    Philipp E.

  • Mit deinem gesendeten Code können wir absolut nicht wissen was du für eine Ausgabe bekommst, wie wäre es wenn du einfach mal den erzeugten Code zeigst der am Ende raus kommt?

  • Flow Snow:


    Und hier nochmal ein aktulasiertes Bild:
    [attachment=0]<!-- ia0 -->Unbenannt.PNG<!-- ia0 -->[/attachment]


    Sarkkan:
    Ja, habe ich doch gemacht.

  • Hi,


    bei mir sieht es so aus - mit einem Rahmen un die Tabelle:
    [attachment=0]<!-- ia0 -->table.jpg<!-- ia0 -->[/attachment]


    Einkleiner Fehler ist:

    Code
    <tr class='message' id='1'>


    Eine id darf nicht mit einer Zahl beginnen.


    Was steht eigentlich in class='messageimg'


    LG

  • CyberGirl:
    Ja, das ist bei mir auch. Nur, wenn ich das dann mit meinem ganzen Styles... anwende kommt was anderes raus :(
    Das mit der id habe ich jetzt geändert:

    Code
    <tr class='message' id='id1'>


    Und zu messageimg:

    Code
    img.messageimg {
    vertical-align: middle;
    cursor: pointer;
    }


    Doch, das verbessert nichts.

  • Hi


    Code
    img class='messageimg' onclick='closemessage(1)' src='../png/icons/bullet_arrow_up.png' />


    wird irgendwo eine Breite für das img gestzt ? Das das HTML ok ist liegt das Problem eher im CSS oder im Bild.


    Versuch es doch einfach mal mit

    Code
    [code]img class='messageimg'  width='100%' onclick='closemessage(1)' src='../png/icons/bullet_arrow_up.png' />

    [/code]

  • OK.
    Hier ist er:
    div#content table {
    width: 100%;
    text-align: center;
    }
    div#content table tr:first-child {
    padding: 5px;
    text-align: center;
    }
    div#content td {
    border-bottom: 1px solid #393939;
    padding: 5px;
    }

Jetzt mitmachen!

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