timt: tr-Elemente einer bestimmten Tabelle auswählen

Hallo,

habe ein kleines Problem mit CSS: Ich habe eine Tabelle, bei der ich die tr-Elemente einer bestimmten Tabelle auswählen will. Also wenn die Tabelle der Klasse "test" angehört, will ich alle tr-Elemente dieser Klasse auswählen.

Ich habs dann so probiert: "test.tr {}". Leider funktioniert das nicht. Kann mir jemand sagen warum nicht?

hier noch ein kleines Beispiel:

<html>
 <head>

<style type="text/css">
   <!--
    test.tr{background:yellow;}
   -->
  </style>
 </head>
 <body>

<table class="test">

<tr>
    <td>test</td>
    <td>asf</td>
    </tr>
  </table>

</body>
</html>

  1. Hallo,

    habe ein kleines Problem mit CSS: Ich habe eine Tabelle, bei der ich die tr-Elemente einer bestimmten Tabelle auswählen will. Also wenn die Tabelle der Klasse "test" angehört, will ich alle tr-Elemente dieser Klasse auswählen.

    Ich habs dann so probiert: "test.tr {}". Leider funktioniert das nicht. Kann mir jemand sagen warum nicht?

    weil es die falsche Syntax ist.
    Wie es geht, steht in SELFHTML, CSS,  Formate für Klassen definieren.

    Freundliche Grüße

    Vinzenz

  2. Ich habs dann so probiert: "test.tr {}". Leider funktioniert das nicht. Kann mir jemand sagen warum nicht?
      <table class="test">
       <tr>

    du hast eine tabelle mit der klasse test die als kind ein tr hat das du ansprechen willst

    table (eine tabelle)
    .test (etws mit der klasse test)
    tr (eine tabellenzeile

    table.test (eine tabelle mit der klasse test)
    table tr (ein tr als nachfahre in einer tabelle, beliebige tiefe)
    .test tr (ein tr als nachfahre von etwas mit der klasse test, beliebige tiefe)
    table.test tr (ein tr als nachfahre von einer tabelle mit der klasse test, beliebige tiefe

    für dich ist also
    table.test tr
    oder
    .test tr
    geeignet
    ob du erstere oder zweitere variante wählst, hängt von weiteren faktoren ab (zb ob es auch andere elemente mit der klasse test gibt die in irgend einer verschachtelung ein tr haben können)

    noch genauer (alledings nicht wirklich internet explorer tauglich, der versteht keine nachfahrenselektoren)
    .test>tr (ein tr als direkter nachfahre (kind) von etwas mit der klasse test

    1. @@suit:

      noch genauer (alledings nicht wirklich internet explorer tauglich, der versteht keine nachfahrenselektoren)
      .test>tr (ein tr als direkter nachfahre (kind) von etwas mit der klasse test

      Dass 'tr' in HTML nicht direkter Nachfahre des 'table'-Elements ist, solltest du inzwischen wissen: http://forum.de.selfhtml.org/archiv/2008/4/t169914/#m1110055 war direkte Antwort auf ein Posing von dir.

      Und der Umkehrschluss von http://forum.de.selfhtml.org/archiv/2008/4/t169655/#m1109434 ist, dass bei einer Struktur
        table
        └─tbody
          └─tr
      der Selektor table>tr ins Leere greift.

      Live long and prosper,
      Gunnar

      --
      Flughafen in Tempelhof
      findet jeder Hempel doof.
      1. Dass 'tr' in HTML nicht direkter Nachfahre des 'table'-Elements ist, solltest du inzwischen wissen

        ich werds mir spätestens dann merken, wenn ich den nachfahrenselektor endlich mal verwenden darf ;)

        1. ich werds mir spätestens dann merken, wenn ich den nachfahrenselektor endlich mal verwenden darf ;)

          Es sei Dir erlaubt, mein Prinz. *grossmuetig mir der Hand wedel*

          1. Es sei Dir erlaubt, mein Prinz.

            sei vorsichtig mit deinen aussagen - die monarchie haben wir hierzulande (österreich) vor fast 100 jahren abgeschafft ;)

            1. Hallo,

              die monarchie haben wir hierzulande (...) abgeschafft ;)

              das sage ich auch immer, wenn es mal wieder heißt, "Der Kunde ist König". :-)

              Ciao,
               Martin

              --
              Um die Wahrheit zu erfahren, muss man den Menschen widersprechen.
                (George Bernhard Shaw)
  3. @@timt:

    Ich habs dann so probiert: "test.tr {}". Leider funktioniert das nicht. Kann mir jemand sagen warum nicht?

    Weil das der Selektor wäre für alle Elemente des Typs 'test' (solche gibt es in HTML nicht), die der Klasse 'tr' angehören.

    Du möchtest aber alle Elemente des Typs 'tr' selektieren, die ihrerseits Nachfahren eines Elements (beliebigen Typs oder vom Typ 'table') der Klasse 'test' sind.

    [CSS2 §5.1, CSS2 §5.5]

    Live long and prosper,
    Gunnar

    --
    Flughafen in Tempelhof
    findet jeder Hempel doof.