Christoph: Hintergrundfarben in Tabelle

Hallo zusammen,

kann ich einer Tabelle mit CSS den Spalten verschiedene Hintergrundfarben geben, obwohl es nur ein Selektor (td) ist.
Ich kann auch keinen zweiten definieren, weil die Seite ein Popup ist, das aus einer XML-Datei generiert wird.
Danke.

  1. Hi,

    kann ich einer Tabelle mit CSS den Spalten verschiedene Hintergrundfarben geben,

    theoretisch über das <col/>-Element. Praktisch über eine Kombination aus :first-child-Pesudoklasse und dem Adjacent Sibling Selector "+".

    obwohl es nur ein Selektor (td) ist.
    Ich kann auch keinen zweiten definieren, weil die Seite ein Popup ist, das aus einer XML-Datei generiert wird.

    Diesen Teil habe ich nicht verstanden.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo,

      schon mal gut zu hören, dass das funktionieren kann! Es sollen die Fekder mit Buchstabe unterschiedlich hinterlegt werden als, die mit den Zahlen.
      <tr><td class='normal'>A:&nbsp;</td>
      <td class='normal'>1</td></tr>
      <tr><td class='normal'>B:&nbsp;</td>
      <td class='normal'>2</td></tr>
      <tr><td class='normal'>C:&nbsp;</td>
      <td class='normal'>3</td></tr>
      <tr><td class='normal'>
      Wie funktioniert das mit  :first-child-Pesudoklasse und dem Adjacent Sibling Selector "+", hab da drüber noch nichts gelesen?Bbin da noch relativ frisch drin...
      Christoph

      1. Hi,

        Es sollen die Fekder mit Buchstabe unterschiedlich hinterlegt werden als, die mit den Zahlen.

        also willst Du nur die erste Spalte, das erste Kind der <tr>-Elemente selektieren?

        <tr><td class='normal'>A:&nbsp;</td>

        Wozu vermittelst Du hier den Inhalt(!) eines geschützten Leerzeichens?

        <td class='normal'>1</td></tr>

        Wenn alle gleichartigen Elemente eines Bereiches eine Klasse besitzen, ist die Wahrscheinlichkeit, dass die Struktur grob fehlerhaft ist, nahe 100%.

        Wie funktioniert das mit  :first-child-Pesudoklasse und dem Adjacent Sibling Selector "+", hab da drüber noch nichts gelesen?

        Was hast Du ver-, wo hast Du gesucht?

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
        1. Hallo,

          die Sache ist so. Die Internetseite, in der dieser CSS Befehl eingebaut ist, ist ne WebGIS-Sache. Man kann Grafiken anklicken und dann erscheint ein weiteres Fenster, in dem die Objektdaten in Form dieser Tabelle angezeigt werden. Die Objektdaten sind extern in einer XML-Datei gespeichert. Es werden automatisch geschützte Leerzeichen vergeben, wenn in dieser Spalte keine Daten enthalten sind.
          Wenn du willst, schick ich nen Link zum dann anschauen.
          Christoph

          1. Hi,

            die Sache ist so. Die Internetseite, in der dieser CSS Befehl

            es gibt in CSS genau wie in HTML keine Befehle.

            eingebaut ist, ist ne WebGIS-Sache.

            Irrtum. Es ist eine HTML-Seite.

            Es werden automatisch geschützte Leerzeichen vergeben, wenn in dieser Spalte keine Daten enthalten sind.

            Für Mängel in Fremdsoftware bin ich nicht verantwortlich. Ich kann nur auf sie hinweisen.

            Wenn du willst, schick ich nen Link zum dann anschauen.

            Das ist zwar grundsätzlich bei einer Frage nicht verkehrt, in diesem Fall aber wohl nicht nötig. Das Problem ist doch gelöst, richtig? Einige neue habe ich genannt, die kannst Du nun angehen.

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
    2. Hallo Cheatah,

      ich habe das bis jetzt nur über ein JS-lösen können ;-(
      Wenn ich das nicht auf dem Server realisieren konnte.

      z.B. bei mit:

      function zebra(){
       if(document.getElementsByTagName){
         var myTR = document.getElementsByTagName("tr");
         for(i = 0; i < myTR.length; i++){
           if(i % 2 == 0){
            for(x = 0; x < myTR[i].getElementsByTagName("td").length; x++){
              myTR[i].getElementsByTagName("td")[x].className = myTR[i].getElementsByTagName("td")[x].className + "-1";
             }
           }
           else{
           }
         }
        }
      }
      // Wobei hier die Reihen nicht nur die Farbe wechseln, sondern auch die Zellen anders aussehen müssen und die unterschiedlich klassen heissen dann:
      "name" bzw. "name-1"

      Ich dachte der Adjacent Sibling Selector "+" wird vom IE nicht unterstützt.

      Liege ich da falsch ?
      Oder funktioniert Deine Lösung nur in "modernen" Browsern?

      Danke für Deine Beitrag,

      Bernd

      1. Hi,

        ich habe das bis jetzt nur über ein JS-lösen können ;-(

        na, das ist doch in Ordnung. Es geht nur um einen Effekt, darf also auch fehlen; und die clientseitige Variante spart Code.

        Ich dachte der Adjacent Sibling Selector "+" wird vom IE nicht unterstützt.

        :first-child auch nicht, insofern ist das nicht weiter tragisch.

        Oder funktioniert Deine Lösung nur in "modernen" Browsern?

        Natürlich. Wer schert sich heute noch wegen ein paar optischer Finessen um den IE? Wir befinden uns in einer Zeit, in der man sich schon auf :nth-child() freut, da ist ein Browser mit gerade mal einer CSS/1.0-Unterstützung nur noch schwerlich beachtenswert.

        Cheatah

        --
        X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes