Tim: CSS Nachfahren-Selektoren Wert verändern

Hi,

<style type="text/css">
div p {color:red;}
</style>

Wenn ich nun auf alle p die Text-Farbe ändern will,wie müsste ich das angehen ohne eine Schleife zu nutzen um jedes p seperat einen Wert zuzuweisen?

Die p haben natürlich keinen classnamen und auch keine ID.

<div>
<p>123</p>
<p>123</p>
<p>123</p>
<p>123</p>
</div>

Tim

  1. Hi,

    Die p haben natürlich keinen classnamen und auch keine ID.

    aber das <div>-Element, nachdem Deine JavaScript-Funktion ihn/sie hinzugefügt hat. Und schon kann Dein CSS-Code die schönsten Formatierungen vorhalten.

    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. Hi,

      aber das <div>-Element, nachdem Deine JavaScript-Funktion ihn/sie hinzugefügt hat. Und schon kann Dein CSS-Code die schönsten Formatierungen vorhalten.

      du meinst damit dem div eine anderen Klassennamen zu erteilen?

      An sich ganz gute Idee, aber ich hätte wohl drauf hinweisen müssen, dass die paar zeilen Code nur sinnbildlich sind, in dem Div steckt leider noch viel mehr und das würde dann aus den Fugen geraten.

      Tim

      1. Ahh verstehe doch noch ;-)

        An sich ganz gute Idee, aber ich hätte wohl drauf hinweisen müssen, dass die paar zeilen Code nur sinnbildlich sind, in dem Div steckt leider noch viel mehr und das würde dann aus den Fugen geraten.

        Ich könnte ja alle anderen Css Angeben nochmals auch in der ErsatzClass angeben, ja stimmt, danke

        Tim

        1. Hi,

          Ich könnte ja alle anderen Css Angeben nochmals auch in der ErsatzClass angeben, ja stimmt, danke

          boah, das ist dann wohl definitiv zu umständlich. Lass die bisherigen Klassen einfach drin und füge eine hinzu. Die anderen Klassifizierungen werden ja wohl weiterhin gültig sein, oder?

          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. Hi,

            boah, das ist dann wohl definitiv zu umständlich. Lass die bisherigen Klassen einfach drin und füge eine hinzu. Die anderen Klassifizierungen werden ja wohl weiterhin gültig sein, oder?

            dachte ich versteh das, jetzt aber gar nichts mehr.

            Tim

            1. Hi,

              dachte ich versteh das, jetzt aber gar nichts mehr.

              Wenn Du dem DIV einen Klassennamen verpaßt, gelten natürlich immer noch die bisherigen Regeln. Aber gleichzeitig gelten nunmehr auch die Regeln, die für diese Klasse gelten. Bzw. ggf. werden auch bisherigen Eigenschaften durch neue überstimmt.

              Gruß, Cybaer

              --
              Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
              (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
              1. Hi,

                da fehlt ein wichtiges Wort:

                Wenn Du dem DIV einen

                zusätzlichen

                Klassennamen verpaßt, gelten natürlich immer noch die bisherigen Regeln. [...]

                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. Hi,

                  da fehlt ein wichtiges Wort:

                  Finde ich nicht.

                  Wenn Du dem DIV einen
                  zusätzlichen
                  Klassennamen verpaßt, gelten natürlich immer noch die bisherigen Regeln. [...]

                  Da das DIV bisher keiner Klasse zugewiesen ist, ist automatisch *jeder* vergebene Klassenname "zusätzlich".

                  Also entweder ich verstehe dich nicht, oder wir sind beide Korinthenkacker, oder dir schwebt ein anderes Beispiel vor, als das bislang gepostete. =:-o

                  Denn wenn ich dem DIV (erstmalig) einen Klassennamen verpasse, gilt der bisherige Selektor ja immer noch (was sich dann mit weiteren, zusätzlichen Klassennamen beliebig erweitern läßt) ...

                  Gruß, Cybaer

                  --
                  Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
                  (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
                  1. Hi,

                    Da das DIV bisher keiner Klasse zugewiesen ist,

                    aus https://forum.selfhtml.org/?t=181907&m=1203425:

                    "[...] ich hätte wohl drauf hinweisen müssen, dass die paar zeilen Code nur sinnbildlich sind, in dem Div steckt leider noch viel mehr [...]"

                    Ich möchte nicht ausschließen, dass das Element bereits über Klassen verfügt.

                    Also entweder ich verstehe dich nicht, oder wir sind beide Korinthenkacker,

                    Das eine muss das andere nicht ausschließen ;-)

                    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. Hi,

                      Ich möchte nicht ausschließen, dass das Element bereits über Klassen verfügt.

                      Also entweder ich verstehe dich nicht, oder wir sind beide Korinthenkacker,

                      Das eine muss das andere nicht ausschließen ;-)

                      Gut, jetzt vertehe ich dich, *und* wir sind beide Korinthenkacker. ;-)

                      Gruß, Cybaer

                      --
                      Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
                      (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
                      1. Hi,

                        Also entweder ich verstehe dich nicht, oder wir sind beide Korinthenkacker,
                        Das eine muss das andere nicht ausschließen ;-)
                        Gut, jetzt vertehe ich dich, *und* wir sind beide Korinthenkacker. ;-)

                        naja, eins von zweien, immerhin nicht das schlechteste Ergebnis ;-)

                        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. Hi, bin leider gerade erst wieder zurück.

                  da fehlt ein wichtiges Wort:

                  Wenn Du dem DIV einen
                  zusätzlichen
                  Klassennamen verpaßt, gelten natürlich immer noch die bisherigen Regeln. [...]

                  Also wenn das DIV bereits eine class hat ist eine zweite auch möglich.
                  Das habe ich dich schon vor langer Zeit mal vernommen und wieder vergessen und jetzt mal nachgeschaut.

                  Noch kurz testen... Ja, perfect!

                  <style type="text/css">
                  .x{font-size:30px;}
                  .y{color:teal;}
                  </style>

                  <input class="x" type="text" value="test" onclick="this.className='y';" />
                  <input class="x" type="text" value="test" onclick="this.className='x y';" />

                  Vielen Dank
                  Tim

                  1. Hi,

                    Das habe ich dich schon vor langer Zeit mal vernommen und wieder vergessen und jetzt mal nachgeschaut.

                    Wie, das hast Du nicht in SELFHTML nachgeschaut? Das Du dich nicht schämst! >;->

                    Gruß, Cybaer

                    --
                    Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
                    (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
                  2. @@Tim:

                    […] und wieder vergessen und jetzt mal nachgeschaut.

                    Die Seite kannste auch wirklich vergessen:

                    Zum einen verwendet sie unsinnige Klassenbezeichner. (Auch in Beispielen sollte man das nicht tun, sonst gibt man ein schlechtes Beispiel.)

                    Zum anderen suggeriert die Seite, das Stylen mit mehreren Klassen würde auch im IE funktionieren. Das ist nicht der Fall:

                    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
                    <html xmlns="http://www.w3.org/1999/xhtml">  
                     <head>  
                      <title>TEST</title>  
                      <style type="text/css">  
                    [code lang=css].foo  
                    {  
                     color: red;  
                    }  
                      
                    .bar  
                    {  
                     color: green;  
                    }  
                      
                    .foo.bar  
                    {  
                     color: blue;  
                    }
                    

                    </style>
                     </head>
                     <body>
                      <p class="foo">foo</p>
                      <p class="bar">bar</p>
                      <p class="foo bar">foo bar</p>
                     </body>
                    </html>[/code]

                    Live long and prosper,
                    Gunnar

                    --
                    Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
                    1. Hi,

                      Zum anderen suggeriert die Seite, das Stylen mit mehreren Klassen würde auch im IE funktionieren. Das ist nicht der Fall:

                      Ich verstehe jetzt deine Selektoren-Auszeichnung zwar nicht aber im IE funktioniert das schon <p class="a1 a2">2 Klassen</p>

                      Tim

                      1. @@Tim:

                        Ich verstehe jetzt deine Selektoren-Auszeichnung zwar nicht

                        Das wäre aber Voraussetzung dafür, zu verstehen, dass der IE 6 Mist macht.

                        '.foo' selektiert alle Elemente, die der Klasse "foo" angehören.
                        '.bar' selektiert alle Elemente, die der Klasse "bar" angehören.
                        '.foo.bar' selektiert alle Elemente, die sowohl der Klasse "foo" als auch der Klasse "bar" angehören.

                        aber im IE funktioniert das schon <p class="a1 a2">2 Klassen</p>

                        Mein Beispiel demonstriert doch, dass dies nicht der Fall ist.

                        Richige Darstellung: "foo" rot, "bar" grün, "foo bar" blau. Im IE 6 ist aber "bar" blau.

                        IE 6 wertet '.foo.bar' als ob da nur '.bar' stünde.

                        Live long and prosper,
                        Gunnar

                        --
                        Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
                        1. Hi,

                          IE 6 wertet '.foo.bar' als ob da nur '.bar' stünde.

                          Wobei dieser Fall hier wohl nicht von Relevanz ist.

                          Gruß, Cybaer

                          --
                          Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
                          (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
                          1. @@Cybaer:

                            IE 6 wertet '.foo.bar' als ob da nur '.bar' stünde.

                            Wobei dieser Fall hier wohl nicht von Relevanz ist.

                            Ich bezog mich ja auch nicht auf das Hier, sondern auf das Dort.

                            Eine solche Seite, die Wissen verbreiten will, es aber lediglich zum Halbwissen bringt, ist eher schädlich denn nützlich.

                            Live long and prosper,
                            Gunnar

                            --
                            Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
                            1. Hi,

                              Eine solche Seite, die Wissen verbreiten will, es aber lediglich zum Halbwissen bringt, ist eher schädlich denn nützlich.

                              Da stimme ich dir natürlich zu.

                              Obwohl, das gilt dann natürlich (leider) für sehr viele Seiten im Web. SELFHTML ist ja auch nicht fehlerfrei oder vollständig ...

                              Gruß, Cybaer

                              --
                              Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
                              (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
                              1. @@Cybaer:

                                Eine solche Seite, die Wissen verbreiten will, es aber lediglich zum Halbwissen bringt, ist eher schädlich denn nützlich.

                                Da stimme ich dir natürlich zu.

                                Obwohl, das gilt dann natürlich (leider) für sehr viele Seiten im Web.

                                Da stimme ich dir natürlich zu.

                                Live long and prosper,
                                Gunnar

                                --
                                Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
            2. @@Tim:

              dachte ich versteh das, jetzt aber gar nichts mehr.

              Ehrlich gesagt, ich verstehe nicht einmal deine Frage.

              Was heißt „Wenn ich nun auf alle p die Text-Farbe ändern will“?

              Willst du das dynamisch (mit JavaScript) ändern?

              Ansonsten wäre die Antwort einfach: Gib statt 'div p {color:red;}' eine andere Farbe an.

              Live long and prosper,
              Gunnar

              --
              Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
              1. Hi,

                Ehrlich gesagt, ich verstehe nicht einmal deine Frage.

                das ging mir genauso, aber der gewählte Themenbereich "JAVASCRIPT" gab mir dann die Erleuchtung: Er will mit JavaScript auf irgend eine Aktion dergestalt reagieren, dass die vom CSS-Selektor betroffenen Elemente eine andere Schriftfarbe besitzen als die, die im Moment in seinem CSS-Code angegeben ist.

                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. @@Cheatah:

                  das ging mir genauso, aber der gewählte Themenbereich "JAVASCRIPT" gab mir dann die Erleuchtung:

                  Seit wann hast du eine Glaskugel?

                  Live long and prosper,
                  Gunnar

                  --
                  Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
                  1. Hi,

                    Seit wann hast du eine Glaskugel?

                    hab ich nicht. Aber ich habe schon den halben Tag lang leichte Kopfschmerzen (mit steigender Tendenz), vielleicht wirken die sich positiv auf meine latenten PSI-Kräfte aus. Ich werde übrigens stets dem Bedürfnis nachgehen, die auf diese Weise erhaltenen Kräfte auf ein Minimum zu reduzieren ...

                    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. Tach,

                      hab ich nicht. Aber ich habe schon den halben Tag lang leichte Kopfschmerzen (mit steigender Tendenz), vielleicht wirken die sich positiv auf meine latenten PSI-Kräfte aus. Ich werde übrigens stets dem Bedürfnis nachgehen, die auf diese Weise erhaltenen Kräfte auf ein Minimum zu reduzieren ...

                      dann wollen wir hoffen, dass du niemals über den Rand der Galaxis fliegst und dass LX bescheid gibt, wenn deine Augen anfagen silbern zu werden.

                      mfg
                      Woodfighter

                      1. Hi,

                        dann wollen wir hoffen, dass du niemals über den Rand der Galaxis fliegst

                        wenn schon, dann am Ende des Universums (Restaurantbesuch nicht vergessen ...)

                        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. Tach,

                          wenn schon, dann am Ende des Universums (Restaurantbesuch nicht vergessen ...)

                          das entsprechende Sparkonto habe ich bereits angelegt.

                          mfg
                          Woodfighter

      2. Hi,

        du meinst damit dem div eine anderen Klassennamen zu erteilen?

        anderen? Nö, das dürfte nicht nötig sein. Vermutlich möchtest Du einfach eine Klasse hinzufügen.

        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. Hi,

    Wenn ich nun auf alle p die Text-Farbe ändern will,wie müsste ich das angehen ohne eine Schleife zu nutzen um jedes p seperat einen Wert zuzuweisen?

    Du kannst auch das CSS selbst ändern (CSSDOM): cssRule("div p","color","blue");

    Gruß, Cybaer

    --
    Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
    (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
    1. @@Cybaer:

      Du kannst auch das CSS selbst ändern (CSSDOM): cssRule("div p","color","blue");

      Da ist sie wieder, die Spatzenkanone. Wie (fast) immer unpassend.

      Live long and prosper,
      Gunnar

      --
      Das einzige Mittel, den Irrtum zu vermeiden, ist die Unwissenheit. (Jean-Jacques Rousseau)
      1. Hi,

        Da ist sie wieder, die Spatzenkanone. Wie (fast) immer unpassend.

        Da ist er wieder, der Würgreflex. Wie immer unpassend. :->

        Gruß, Cybaer

        --
        Man muß viel gelernt haben, um über das, was man nicht weiß, fragen zu können.
        (Jean-Jacques Rousseau, Philosoph u. Schriftsteller)
        1. der Würgreflex. Wie immer unpassend. :->

          wenn du etwas schlechtes gegessen hast (sofern es nicht grade spülmittel war) freust du dich ggf. über deinen würgereflex :p

          1. Hallo,

            wenn du etwas schlechtes gegessen hast (...) freust du dich ggf. über deinen würgereflex :p

            das stimmt - wenn das wirklich der Grund für das Unwohlsein war, geht's mir nämlich eine Viertelstunde später meistens wieder gut. Nur die Ausnahme mit dem Spülmittel verstehe ich nicht; ich bin aber auch nicht masochistisch genug, es einfach auszuprobieren.

            So long,
             Martin

            --
            In der Theorie stimmen Theorie und Praxis genau überein.
            1. Nur die Ausnahme mit dem Spülmittel verstehe ich nicht; ich bin aber auch nicht masochistisch genug, es einfach auszuprobieren.

              spülmittel war als platzhalter für ätzende flüssigkeiten gedacht

              wenn man derartiges trinkt, bekommt man auch einen würgereflex - allerdings sollte man dann tunlichst nicht erbrechen

              der mange selbst verkraftet eine säure um einiges länger als die speiseröhre - da durch das trinken einer entsprechenden flüssigkeit die speiseröhre inklusive kehldeckel bereits verätzt ist, sollte man das ganze nicht nochmal durchjagen ums schlimmer zu machen

              sofort den giftnotruf anrufen und ab zum arzt und das gegessene oder getrunkene mitnehmen

              wasser nachtrinken, milch trinken oder brot essen wie es manchmal empfohlen wird, kann uncool enden