Baracus: Linien in einer Tabelle

Hallo Profis,

ich habe eine Tabelle über eine ganze Seite. Nun möchte ich zwischen manchen Bereichen eine Trennlinie einfügen (so wie bei <hr> ), aber nicht mit Table header und Table body, da ich mehrere Linien brauche. Hat jemmand eine Idee?

  1. Hi,

    ich habe eine Tabelle über eine ganze Seite. Nun möchte ich zwischen manchen Bereichen eine Trennlinie einfügen (so wie bei <hr> ), aber nicht mit Table header und Table body, da ich mehrere Linien brauche. Hat jemmand eine Idee?

    Was hält Dich davon ab (sofern es semantisch einen Sinn hat), mehrere tbody zu verwenden?

    Oder bei mehreren tr eine border zu setzen (class bietet sich an)?

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.Mud-Guard.de/
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Hi Andreas,

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
      <html>
      <body>
      <table>
       <tr> <td> </td><td> </td></tr>
       <tr style="border:5px solid red"> <td> </td><td> </td></tr>
       <tr> <td> </td><td> </td></tr>
      </table>
      </body>
      </html>

      weder der IE, noch der NC/Gecko nehmen das, egal ob class oder als Atribut im Tag

      Gruß aus Berlin!
      eddi

      1. Hallo,

        weder der IE, noch der NC/Gecko nehmen das, egal ob class oder als Atribut im Tag

        So geht's:

        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
        <html>
        <body>
        <table style="border-collapse:collapse; border-spacing:0;">
         <tr><td>Erste Zeile</td><td>Ohne Rahmen</td></tr>
         <tr style="border:5px solid red"> <td>Zweite Zeile</td><td>Mit Rahmen</td></tr>
         <tr> <td>Dritte Zeile</td><td>Ohne Rahmen</td></tr>
        </table>
        </body>
        </html>

        Es liegt daran, dass man ausdruecklich sagen muss, dass
        die Browser das Collapsing Border Model anwenden sollen:

        <table style="border-collapse:collapse; border-spacing:0;">

        Erklaerung: Siehe mein Posting von 9:46 h ([pref:t=77129&m=444827])

        mfg,
        Thomas

        1. Hallo Thomas

          THX ;)

          Gruß aus Berlin!
          eddi

    2. Ok werde ich mal versuchen Danke.

    3. Hallo,

      Oder bei mehreren tr eine border zu setzen (class bietet sich an)?

      Hinweis: Das geht nur beim Collapsing Border Model:

      http://www.w3.org/TR/REC-CSS2/tables.html#separated-borders
      "The separated borders model [...]
      Rows, columns, row groups, and column groups cannot have borders"

      http://www.w3.org/TR/REC-CSS2/tables.html#collapsing-borders
      "In the collapsing border model, it is possible to specify borders
      that surround all or part of a cell, row, row group, column, and
      column group."

      Entgegen der CSS 2.0 Specification wenden die meisten Browser
      ohne spezifische Angabe das Separated Border Model an.

      Deshalb steht in den Errata zu CSS 2.0:
      http://www.w3.org/Style/css2-updates/REC-CSS2-19980512-errata.html#s-17-6
      "Section 17.6 Borders
      Several popular browsers assume an initial value for
      'border-collapse' of 'separate' rather than 'collapse'
      or exhibit behavior that is close to that value, even if
      they do not actually implement the CSS table model.
      Therefore the CSS WG proposes to change the initial
      value to 'separate', in the expectation that it better
      matches what users expect it to be."

      Somit sollte man dafuer sorgen, dass das Collapsing Border Model
      angewendet wird, wenn man einzelnen Zeilen einen Rahmen (border)
      geben will:

      table { border-collapse:collapse; border-spacing:0; }

      mfg, Thomas

      1. Hi,

        Hinweis: Das geht nur beim Collapsing Border Model:

        Danke für die Erinnerung.

        Bei mir ist das
        table { border-collapse:collapse; border-spacing:0; }

        Bestandteil des "Standard"-CSS, das immer als Grundlage für eine CSS-Datei benutzt wird
        (zusammen mit html, body { min-height:100%; } und noch ein paar anderen Voreinstellungen, die ich immer wieder nutze)

        Entgegen der CSS 2.0 Specification wenden die meisten Browser
        ohne spezifische Angabe das Separated Border Model an.

        Naja, das paßt dazu, daß ohne CSS leider auch nicht cellspacing="0" als default verwendet wird...

        Somit sollte man dafuer sorgen, dass das Collapsing Border Model
        angewendet wird, wenn man einzelnen Zeilen einen Rahmen (border)
        geben will:
        table { border-collapse:collapse; border-spacing:0; }

        s.o. - ist bei mir eigentlich immer der Fall...

        cu,
        Andreas

        --
        MudGuard? Siehe http://www.Mud-Guard.de/
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
  2. Hy

    ich habe eine Tabelle über eine ganze Seite. Nun möchte ich zwischen manchen Bereichen eine Trennlinie einfügen (so wie bei <hr> ), aber nicht mit Table header und Table body, da ich mehrere Linien brauche. Hat jemmand eine Idee?

    Probier mal http://selfhtml.teamone.de/css/eigenschaften/rahmen.htm#border_width

    Vieleicht bringt dich das weiter.

    Gruss
    David

    --
    Lach in die Welt und die Welt lacht zurück.