vonglueck: Verschachteltes Element gezielt über Selektor ansprechen

Hallo liebes Forum,

wie spreche ich ein verschachteltes Element gezielt über den Selektor an, wenn das auszuwählende Element an zweiter Stelle steht:

XPath:

/html/body/table/tbody/tr/td[2]/table/tbody/tr/td

Wie gebe ich das td Element, welches an zweiter Stelle steht als CSS Selektor an?

html body table tbody tr td[2] table tbody tr td{ }?

Bei diesem Beispiel kann ich nicht auf Klassen oder Ids zurückgreifen.

Dank im voraus,

Von Glück

  1. Hellihello vonglueck,

    /html/body/table/tbody/tr/td[2]/table/tbody/tr/td

    Wie gebe ich das td Element, welches an zweiter Stelle steht als CSS Selektor an?

    html body table tbody tr td[2] table tbody tr td{ }?

    Bei diesem Beispiel kann ich nicht auf Klassen oder Ids zurückgreifen.

    Ids sind einmalig. Klassen sind mit einem Punkt gekennzeichnet.

    s.a. http://www.websiteoptimization.com/speed/tweak/descendant/.

    Dank und Gruß,

    frankx

    1. Hi,

      Bei diesem Beispiel kann ich nicht auf Klassen oder Ids zurückgreifen.
      Ids sind einmalig. Klassen sind mit einem Punkt gekennzeichnet.

      Was hat Deine Antwort mit der Lösung des Problems zu tun?

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      O o ostern ...
      Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      1. Hellihello Andreas,

        Bei diesem Beispiel kann ich nicht auf Klassen oder Ids zurückgreifen.
        Ids sind einmalig. Klassen sind mit einem Punkt gekennzeichnet.

        Was hat Deine Antwort mit der Lösung des Problems zu tun?

        nun, Du hast einerseits das "s.a. ..."  mit dem Link abgeschnitten, das gehörte ja dazu, zum anderen hatte ich ihn so verstanden, dass er nicht wüsste, wie er hier Ids oder Klassen unterbringen sollte. Ids, so wollte ich ihm sagen, haben nichts mit der Kaskade zu tun. Klassen, so in dem verlinkten Beispiel erwähnt, können mit Punkt an den Selektor angehangen werden. Dafür diese kurze Vorabbeschreibeung.

        Möge das self mit us sein,

        Dank und Gruß,

        frankx

        1. Hallo

          Ids, so wollte ich ihm sagen, haben nichts mit der Kaskade zu tun.

          html body div#irgendwas ul#navi li a { text-decoration:underline; }

          Kaskadiert das oder kaskadiert das?

          Tschö, Auge

          --
          Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
          (Victor Hugo)
          Veranstaltungsdatenbank Vdb 0.2
          1. Hellihello Auge,

            Ids, so wollte ich ihm sagen, haben nichts mit der Kaskade zu tun.

            html body div#irgendwas ul#navi li a { text-decoration:underline; }

            Kaskadiert das oder kaskadiert das?

            naja, ist das sinnvoll?

            Ids werden m.E. sparsam vergeben. Nähmen wir das die Navi, wäre sowieso #navi (...) ausreichend.

            das li a wäre vermutlich auch redundant mit #navi a, da die Anker i.d. Regel alle innerhalb von li stünden.

            Ich würde präzisieren wollen: Das Element mit Id-Attribut wird ohne Kaskade genutzt, innerhalb eines Elements mit Id-Attribut kann wieder kaskadiert werden.

            Abgesehen davon wollte ja MudGuard wissen, was das mit der Fragestellung zu tun haben sollten, nicht, ob meine Antwort auch im Detail korrekt ist (;-).

            Dank und Gruß,

            frankx

            1. Hallo

              Ids, so wollte ich ihm sagen, haben nichts mit der Kaskade zu tun.

              html body div#irgendwas ul#navi li a { text-decoration:underline; }

              Kaskadiert das oder kaskadiert das?

              naja, ist das sinnvoll?

              In keinster Weise. Dazu war es aber auch nicht gedacht. :-)

              Ids werden m.E. sparsam vergeben. Nähmen wir das die Navi, wäre sowieso #navi (...) ausreichend.

              das li a wäre vermutlich auch redundant mit #navi a, da die Anker i.d. Regel alle innerhalb von li stünden.

              Jup und jup.

              Ich würde präzisieren wollen: Das Element mit Id-Attribut wird ohne Kaskade genutzt, innerhalb eines Elements mit Id-Attribut kann wieder kaskadiert werden.

              Sollte der allerhäufigste Anwendungsfall sein. Denkbare Ausnahme: Auf mehreren Seiten wird jeweils ein Element mit gleichlautendem Namen verwendet. Auf einer der Seiten ist das Element aber Kind eines anderen Elements und soll auch anders formatiert werden, als auf den anderen Seiten.

              #termine {  
              /* normale Formatierungen */  
              }  
                
              #kurzinfos #termine {  
              /* Sonderformatierungen (z.B. auf der Startseite) */  
              }
              

              Tschö, Auge

              --
              Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
              (Victor Hugo)
              Veranstaltungsdatenbank Vdb 0.2
              1. Hellihello Auge,

                Sollte der allerhäufigste Anwendungsfall sein. Denkbare Ausnahme: Auf mehreren Seiten wird jeweils ein Element mit gleichlautendem Namen verwendet. Auf einer der Seiten ist das Element aber Kind eines anderen Elements und soll auch anders formatiert werden, als auf den anderen Seiten.

                #termine {

                /* normale Formatierungen */
                }

                #kurzinfos #termine {
                /* Sonderformatierungen (z.B. auf der Startseite) */
                }

                
                >   
                  
                naja, ich hätte jetzt gemeint, eine id ist quasi höherwertig als eine Klasse. Da sich o.g. auch mit Klassen realisieren ließe, wäre eine ID vielleicht garnicht angebracht? Also mit "höherwertig" könnte jetzt im Grunde "keine Kaskadennotwendigkeit da direkt ansprechbar" gemeint sein. Aber ich verwende ids eigentlich kaum für css. Eher wenn javascript sich was per id holen soll oder fürs label-Attribut "for".  
                  
                Dank und Gruß,  
                  
                frankx
                
                1. Hallo

                  #termine {

                  /* normale Formatierungen */
                  }

                  #kurzinfos #termine {
                  /* Sonderformatierungen (z.B. auf der Startseite) */
                  }

                  
                  > >   
                  >   
                  > naja, ich hätte jetzt gemeint, eine id ist quasi höherwertig als eine Klasse. Da sich o.g. auch mit Klassen realisieren ließe, wäre eine ID vielleicht garnicht angebracht? Also mit "höherwertig" könnte jetzt im Grunde "keine Kaskadennotwendigkeit da direkt ansprechbar" gemeint sein. Aber ich verwende ids eigentlich kaum für css. Eher wenn javascript sich was per id holen soll oder fürs label-Attribut "for".  
                    
                  Den "Grundbereichen" einer Webseite verpasse ich IDs. Ob ich die dann nur per CSS oder auch mit JavaScript anspreche, ist erstmal egal. Zumal, wenn ich, um beim Beispiel zu bleiben, einen Bereich habe um Termine anzuzeigen, dieser Bereich auf mehreren Seiten angezeigt wird, aber auf der "eigenen" Seite andere Formatierungen hat, als z.B. auf der Startseite, halte ich eine ID durchaus für vergebenswert. Einer Klasse bedarf es mMn hier nicht und unterschiedlich formatieren lässt sich der Bereich über die Selektion auch. Also alles, was ich brauche, steht mir zur Verfügung.  
                    
                  Tschö, Auge  
                  
                  -- 
                  Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.  
                  (Victor Hugo)  
                    
                  [Veranstaltungsdatenbank Vdb 0.2](http://termindbase.auge8472.de/)
                  
  2. Hi,

    wie spreche ich ein verschachteltes Element gezielt über den Selektor an, wenn das auszuwählende Element an zweiter Stelle steht:
    XPath:
    /html/body/table/tbody/tr/td[2]/table/tbody/tr/td
    Wie gebe ich das td Element, welches an zweiter Stelle steht als CSS Selektor an?

    Nachfahrenselektor (' '), Kind-Selektor ('>'), Erstes-Kind-Selektor (':first-child'), benachbartes-Geschwister-Selektor ('+') geschickt kombinieren:

    Das zweite td ist das benachbarte Kind des ersten td (welches das erste Kind von tr ist)

    html body table tbody tr td[2] table tbody tr td{ }?

    Nicht raten. Nachschlagen. http://www.w3.org/TR/CSS21/selector.html

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.