Rudi: Was bewirkt %?

Guten Morgen,

mit folgendem Code gibt man abwechselnde Hintergrundfarben aus:
($color++ % 2 == 0 ? "CCC" : "999")
Dürfte für die meisten nichts neues sein. Kann mir jemand bitte kurz erklären, was das % bewirkt? Da kann man so schlecht nach googeln ;)

Gruß
Rudi

  1. Mahlzeit Rudi,

    Kann mir jemand bitte kurz erklären, was das % bewirkt? Da kann man so schlecht nach googeln ;)

    Das kann die zuständige Doku - die man sinnvollerweise zuerst befragt, bevor man googlet ... ;-)

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
  2. Hallo,

    Dürfte für die meisten nichts neues sein. Kann mir jemand bitte kurz erklären, was das % bewirkt? Da kann man so schlecht nach googeln ;)

    Google findet man schon was PHP Operatoren

    mit folgendem Code gibt man abwechselnde Hintergrundfarben aus:
    ($color++ % 2 == 0 ? "CCC" : "999")

    $color++ erhört sich nach jedem durchlauf um 1

    sprich wenn $count= 3 ist wird es durch 2 geteilt $color++ % 2 und wenn nun der Restwert sprich 1 == 0 ist dann gibt er CCC aus da dies aber nicht der Fall ist gibt er 999 aus.

    1/2 Restwert = 1
    2/2 Restwert = 0
    3/2 Restwert = 1
    4/2 Restwert = 0

    und so weiter.

    Gruß Jonny F.

  3. Danke euch beiden. Wieder etwas schlauer :)

  4. @@Rudi:

    nuqneH

    mit folgendem Code gibt man abwechselnde Hintergrundfarben aus:
    ($color++ % 2 == 0 ? "CCC" : "999")

    Das ist ziemlicher Unsinn. Hintergrundfarben sollten nicht im Markup stehen, sondern im Stylesheet. Der Server muss auch nicht damit belastet werden Zeilen, Listitems etc. mitzuzählen, das kann der Browser.

    Dafür gibt es die Pseudoklasse :nth-child [CSS3-SELECTORS §6.6.5.2]:

    foo:nth-child(even) { backrgound-color: "#999" }  
    foo:nth-child(odd)  { backrgound-color: "#CCC" }
    

    Für IE < 8 lässt sich dies (auch :nth-child(an+b)) mit CSS-Expression realisieren.

    Qapla'

    --
    Volumen einer Pizza mit Radius z und Dicke a: pi z z a
    1. Hello,

      Das ist ziemlicher Unsinn. Hintergrundfarben sollten nicht im Markup stehen, sondern im Stylesheet.

      Hab ich schon öfter drüber philosophiert.
      Was macht man denn, wenn die Hintergrundfarbe auch semantische Bedeutung haben soll?

      Liebe Grüße aus dem schönen Oberharz

      Tom vom Berg

      --
       ☻_
      /▌
      / \ Nur selber lernen macht schlau
      http://bergpost.annerschbarrich.de
      1. @@Tom:

        nuqneH

        Was macht man denn, wenn die Hintergrundfarbe auch semantische Bedeutung haben soll?

        Eine Klasse vergeben und die Bedeutung nicht nur durch die Hintergrungfarbe hervorheben (Barrierefreiheit).

        Qapla'

        --
        Volumen einer Pizza mit Radius z und Dicke a: pi z z a
        1. Hello Gunnar,

          Was macht man denn, wenn die Hintergrundfarbe auch semantische Bedeutung haben soll?

          Eine Klasse vergeben und die Bedeutung nicht nur durch die Hintergrungfarbe hervorheben (Barrierefreiheit).

          Jau danke, das dachte ich mir schon fast.

          Es handelt sich z.B. um Terminpläne für das Gebäude- und Ressourcenmanagement, bei denen durch Farben angezeigt wird, ob die Ressource frei, gesperrt, angefragt, vorbestellt, oder bestellt/vergeben ist.

          Und weil man dann auch nur wenig Platz hat, steht nur die Buchungsnummer/die Abteilungsnummer im Feld (je nach Anwendungsfall). Ist im Prinzip ziemlich schwierig, das barrierefrei zu gestalten. So richtig fehlt mir da noch die Idee.

          Liebe Grüße aus dem schönen Oberharz

          Tom vom Berg

          --
           ☻_
          /▌
          / \ Nur selber lernen macht schlau
          http://bergpost.annerschbarrich.de
    2. @@Gunnar Bittersmann:

      nuqneH

      foo:nth-child(even) { backrgound-color: "#999" }

      foo:nth-child(odd)  { backrgound-color: "#CCC" }

        
      Oops, was leuchtet denn da so rot?  
        
        
      
      > Für IE < 8 lässt sich dies (auch `:nth-child(an+b)`{:.language-css}) mit CSS-Expression realisieren.  
        
      [Zebrastreifen](http://bittersmann.de/articles/zebra)  
        
      Qapla'
      
      -- 
      Volumen einer Pizza mit Radius z und Dicke a: pi z z a
      
      1. Hello Gunnar,

        Zebrastreifen

        mal wieder ein echter Gunnar: Ärmel rauf und ran.
        Danke im Namen aller Interessierten :-)

        Meinen Punkt bekommst Du dafür!

        Liebe Grüße aus dem schönen Oberharz

        Tom vom Berg

        --
         ☻_
        /▌
        / \ Nur selber lernen macht schlau
        http://bergpost.annerschbarrich.de
      2. Für IE < 8 lässt sich dies (auch :nth-child(an+b)) mit CSS-Expression realisieren.

        Mir ist nur ein Rätsel, warum du die Sache immer "CSS-Expression" nennst, wo Microsoft doch primär "Dynamic Properties" dazu sagt ;)