Michael Wronna: Selektoren

hallo alle,

ich moechte elemente selektieren, die ein bestimmtes
kind-element aufweisen. z.b.: falls ich hervorhebung in einem
absatz habe, moechte ich den absatz gelb anzeigen:
  <p>Absatz sollte Gelb sein da er <em>Hervorhebungen</em>
  beinhaltet.</p>
  <p>Absatz ist "normal", da er keine Hervorhebungen
  enthält.</p>
wie koennte man dieses loesen? im voraus meinen danke fuer
eure verweise an das archiv. habe w3c auch schon ausfuehrlich
studiert. gruesse vom bodensee,

michael

--
ss:) zu:) ls:& fo:) de:> va:) ch:? n4:& rl:? br:< js:| ie:% fl:{ mo:|
  1. Hi,

    ich moechte elemente selektieren, die ein bestimmtes
    kind-element aufweisen.

    Dies ist weder in CSS 2 möglich noch wird es in CSS 3 möglich sein.

    wie koennte man dieses loesen?

    Nur, indem Du das Element selbst entsprechend kennzeichnest (Klasse oder sonstwie).

    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,

      Dies ist weder in CSS 2 möglich noch wird es in CSS 3 möglich sein.

      <ungetestet grund="faul"> wäre ein doppeltes :not()chen ein Lösungsweg? </ungetestet>

      Cheatah

      --
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes
      1. hallo cheatah,

        wäre ein doppeltes :not()chen ein Lösungsweg?

        ich sitze gerade auf dem schlauch. was meinst du
        mit :not()chen? gruss vom bodensee,

        michael

        ss:) zu:) ls:& fo:) de:> va:) ch:? n4:& rl:? br:< js:| ie:% fl:{ mo:|

        1. Hi,

          ich sitze gerade auf dem schlauch. was meinst du
          mit :not()chen?

          das sollte eine Anspielung an das doppelte Lottchen sein (laut lesen). Gemeint war, :not() in sich selbst zu schachteln.

          Cheatah

          --
          X-Will-Answer-Email: No
          X-Please-Search-Archive-First: Absolutely Yes
      2. Hi,

        <ungetestet grund="faul"> wäre ein doppeltes :not()chen ein Lösungsweg? </ungetestet>

        Worauf willst Du das :not anwenden?

        Meines Wissens gibt es keine Möglichkeit, ein Element anhand vorhandener Kind-Elemente auszuwählen.

        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. hallo andreas,

          dass es in css2 und css3 nicht vorgesehen ist elemente anhand
          ihrer kindelemente zu selektieren hatte ich ja auch schon
          herausgefunden. ist aber nun eigentlich egal. ich bin darauf
          gestossen, als ich etwas getestet hatte. siehe:
          http:?t=78983&m=457993
          da ich zumeist folgende arbeitsweise bevorzuge:
          daten -> struktur -> darstellung
          db -> php -> xhtml/css
          xml -> xsl -> xhtml/css
          habe ich die moeglichkeit die struktur so z uerzeugen, dass
          die elemente welche entsprechende kindelemente aufweisen einer
          spezielle klasse zuzuordnen. ich danke dir trotzdem fuer
          deine bemuehungen,

          michael

          p.s.: :not habe ich immer noch nicht kapiert, bin mal schnell
            bei w3c.org :-)

          ss:) zu:) ls:& fo:) de:> va:) ch:? n4:& rl:? br:< js:| ie:% fl:{ mo:|

        2. Hi,

          Worauf willst Du das :not anwenden?

          auf das <p>. Ich schätze aber, ich denke da in die falsche Richtung; vermutlich würde (wenn überhaupt) auch wieder nur das enthaltene <em> getroffen werden.

          Meines Wissens gibt es keine Möglichkeit, ein Element anhand vorhandener Kind-Elemente auszuwählen.

          Einen dafür gedachten Weg kenne ich auch nicht.

          Cheatah

          --
          X-Will-Answer-Email: No
          X-Please-Search-Archive-First: Absolutely Yes
          1. Hallo,

            Meines Wissens gibt es keine Möglichkeit, ein Element anhand vorhandener
            Kind-Elemente auszuwählen.
            Einen dafür gedachten Weg kenne ich auch nicht.

            Es ist auch nicht geplant, alle Vorschläge in diese Richtung auf der
            öffentlichen CSS-Mailingliste wurden aus Performancegründen abgeblockt.
            Meines Wissens auch der Grund, weswegen in :contains() nur Strings, keine
            Elemente erlaubt sind.

            Es gab da erbitterte Diskussionen bis hin zum Vorschlagen des radikalen
            Ersetzen der CSS Selektoren oder zumindest Erweiterns durch anderere
            Selektorsyntaxen (Plural von Syntax?) wie zum Beispiel XPath. Wer Spaß
            an sowas hat, sollte mal zurückrecherchieren, man findet da einiges in
            ziemlich regelmäßigen Abständen.

            Tim

  2. Hi michael,

    über CSS ist mir kein Mittel bekannt, das hierzu eingesetzt werden könnte. CSS fragt derartige Vorkommnisse nicht ab.

    Ich könnte mir nur vorstellen, dass du das 'em' derart modifizierst, dass sich hierüber vielleicht etwas drehen lassen könnte. Sauber ist diese Lösung dann denke ich aber mal nicht.

    Werde hier immer wieder reinschauen und interessiert auf einen Gegenposting warten :) - wäre eine tolle Sache.

    Gruss
    Stefan