Tom: Image-Tag in einer Tabelle

Hallo erstmal !

Wer kann mir folgenden Sachverhalt erklären ?

Dieser HTML-Code ist gegeben:

<table border="0" cellspacing="0" cellpadding="0">
  <tr>
        <td rowspan="0" colspan="0">
           <img src="bild1.gif" border="0"></td>
  </tr>
  <tr>
        <td rowspan="0" colspan="0">
           <img src="bild2.gif" border="0"></td>
  </tr>
</table>

Warum muß(!) das </td> - Tag hinter dem Image-Tag stehen (und nicht erst in der nächsten Zeile), damit man zwischen den beiden Bildern keine Unterbrechung erhält ?
(Wollte mehr Übersichtlichkeit haben ...)

Danke für eure Antworten,

Ciao Tom

  1. Joho,

    [tabelle mit bildern]

    Warum muß(!) das </td> - Tag hinter dem Image-Tag stehen (und nicht
    erst in der nächsten Zeile), damit man zwischen den beiden Bildern
    keine Unterbrechung erhält ?

    Weil ein Umbruch nach dem Bild als ein Leerzeichen gewertet wird.
    Dasselbe hat man ja bei Text: im Editor umgebrochener Text wird durch
    ein Leerzeichen getrennt und nicht etwas nahtlos aneinandergefuegt.

    Und IMHO macht das auch Sinn.

    Gruss,
     CK

    1. Hallo CK

      Und IMHO macht das auch Sinn.

      Naja, ich bin nicht ganz sicher, ob das tatsächlich so gut ist, denn eigentlich soll ja die Formatierung des Quelltextes keine Rolle für die Darstellung im Browser spielen. (Sonst wäre es auch ziemlich bald vorbei mit so manchem wysiwyg-Editor, der seinen eigenen schauerlichen Quelltext schreibt - aber das nur am Rande...*g*)

      Ich habe eine Vorliebe für aufgeräumten, übersichtlich eingerückten Quelltext, und ich fände es in der Tat besser, wenn die Browser meine Zeilenumbrüche (ebenso wie Tabs und mehrere Leerzeichen im Quelltext) komplett ignorieren würden. Wenn ich einen Umbruch im Browser haben will, schreibe ich <br>, und wenn ich an einer Stelle ein Leerzeichen haben will, dann schreib ich lieber explizit eins hin...

      Auch nach DOM Level 2 erzeugt ein Zeilenumbruch im Quelltext ein text node, auch wenn im Browser dort gar kein Text erscheint - und ich bin noch nicht sicher, ob ich das konsequent oder idiotisch finden soll... ;o)

      Herzliche Grüße,
      Meg

      1. Joho Meg,

        »» Und IMHO macht das auch Sinn.

        Naja, ich bin nicht ganz sicher, ob das tatsächlich so gut ist, denn
        eigentlich soll ja die Formatierung des Quelltextes keine Rolle für die
        Darstellung im Browser spielen.

        Keine Rolle ist nicht richtig: nur geringe Rolle. Eine gewisse muss sie
        ja spielen, sonst muesste der Browser raten, was ein Wort ist und was nicht.

        (Sonst wäre es auch ziemlich bald vorbei
        mit so manchem wysiwyg-Editor, der seinen eigenen schauerlichen
        Quelltext schreibt - aber das nur am Rande...*g*)

        Was vielleicht nicht unbedingt das schlechteste waere ;-)

        Ich habe eine Vorliebe für aufgeräumten, übersichtlich eingerückten
        Quelltext,

        Dito.

        und ich fände es in der Tat besser, wenn die Browser meine Zeilenumbrüche
        (ebenso wie Tabs und mehrere Leerzeichen im Quelltext) komplett
        ignorieren würden.

        Stattdessen lieber jedesmal   tippen? Bist du irre?! ;-)

        Wenn ich einen Umbruch im Browser haben will, schreibe ich <br>, und wenn
        ich an einer Stelle ein Leerzeichen haben will, dann schreib ich lieber
        explizit eins hin...

        Na, das machst du doch. Du machst einen Umbruch, und weil der Browser diese
        ignorieren muss und den Text als Fliesstext darstellen muss. Irgendwie muss
        er ja auf den Umbruch reagieren. Er kann schliesslich nicht einfach den Text
        nahtlos anhaengen, denn was man trennt, gehoert im Normalfall auch nicht
        zusammen.

        Auch nach DOM Level 2 erzeugt ein Zeilenumbruch im Quelltext ein text
        node, auch wenn im Browser dort gar kein Text erscheint - und ich bin
        noch nicht sicher, ob ich das konsequent oder idiotisch finden soll... ;o)

        Es ist Text ;-) Also muss er es auch so behandeln. (IMHO)

        Gruss,
         CK

        --
        s s^s<DATA>se;s (([^\s]))(ord($1)%2?
        chr(ord($1)-5):chr(ord($1)-3))sieg;s s^s$_see;
        __END__
        uwlsy%*Sr%kqdphv%yr%AFN4%dy%zzzyhfm3ihC*1'as'>

        1. Moin CK,

          Stattdessen lieber jedesmal   tippen? Bist du irre?! ;-)

          Na, ich hoffe nicht... ;o) Du hast mich wohl mißverstanden.

          Ich wünsche mir, daß der Browser meine Zeilenumbrüche und Tabulatoren im Quelltext nicht als Text auffaßt, sondern als zu ignorierende Steuerzeichen, die nur einen Texteditor was angehen. Diese Steuerzeichen soll der Browser in Ruhe lassen.

          Wenn ich einen Umbruch haben will, den der Browser _darstellen_ soll, schreibe ich <br>. Aber Zeilenumbrüche zwischen Tags, die ich im Editor mit der Return-Taste eintippe, wie

          <td>
            <img src="xy.gif" ...ellenlange Liste von Attributen... >
          </td>

          sowie Tabulatoren / Leerzeichen, die ich zum Einrücken meines Quelltextes brauche, sollte der Browser meiner Meinung nach ignorieren.

          Auch nach DOM Level 2 erzeugt ein Zeilenumbruch im Quelltext ein text
          node, auch wenn im Browser dort gar kein Text erscheint - und ich bin
          noch nicht sicher, ob ich das konsequent oder idiotisch finden soll... ;o)

          Es ist Text ;-) Also muss er es auch so behandeln. (IMHO)

          Meiner Meinung nach ist es eben kein Text, sondern ein Steuerzeichen, das nur den Texteditor interessieren sollte.

          Herzliche Grüße,
          Meg