Otto Meier: Lücke im Namen der Klasse

Hallo Forum,

arbeite gerade mit einem CMS, und stelle fest, dass einige der Klassen z.B. so geschrieben sind: class="mod_article block" oder auch class="image_container float_left"

Im Stylesheet reicht dann folgende Schreibweise aus um die Klasse anzusprechen: .mod_article {}     oder eben    .image_container {}

Habe hier ein kleines Verständnisproblem.
1. Bin bisher davon ausgegangen, dass keine Leerzeichen in Klassen bzw. ID's vorhanden sein dürfen.
2. Wenn es aber trotzdem funktioniert, wieso wird es gemacht?

Gruß, der Otto

  1. Hi,

    arbeite gerade mit einem CMS, und stelle fest, dass einige der Klassen z.B. so geschrieben sind: class="mod_article block" oder auch class="image_container float_left"

    1. Bin bisher davon ausgegangen, dass keine Leerzeichen in Klassen bzw. ID's vorhanden sein dürfen.

    Sind ja auch nicht.

    1. Wenn es aber trotzdem funktioniert, wieso wird es gemacht?

    Weil das Element ganz offenbar *beiden* Klassen angehören soll.

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
    1. Hi Chris,

      Sind ja auch nicht.

      Du meinst dürfen auch nicht, richtig?

      Weil das Element ganz offenbar *beiden* Klassen angehören soll.

      Das würde bedeuten, dass ich zwei Klassen schreiben kann. z.B.
      class="mod_article block"
      .mod_article {}
      und
      .block {}

      Das funktioniert sogar. Und zwar in allen Varianten. Du kannst die Styles weglassen ohne den Klassennamen zu ändern und den Klassennamen ändern ohne einen Style zu löschen.

      Warum funktioniert das, wenn es nicht den Standards entspricht?

      Sollte man das nutzen oder besser nicht?

      Gruß,
      otto

      1. Om nah hoo pez nyeetz, otto meier!

        Sind ja auch nicht.
        Du meinst dürfen auch nicht, richtig?

        Nein, es sind keine Leerzeichen im Klassennamen, es sind zwei Klassennamen.

        siehe wiki

        Für IDs wäre es übrigens falsch, denn ein Element kann nicht zwei IDs bekommen.

        Matthias

        --
        1/z ist kein Blatt Papier.

      2. Hi,

        Warum funktioniert das, wenn es nicht den Standards entspricht?

        Wer behauptet denn, dass es das nicht täte?

        MfG ChrisB

        --
        RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
      3. @@otto meier:

        nuqneH

        Weil das Element ganz offenbar *beiden* Klassen angehören soll.
        Das würde bedeuten, dass ich zwei Klassen schreiben kann. z.B.
        class="mod_article block"
        .mod_article {}
        und
        .block {}

        Es lassen sich auch alle Elemente auswählen, die beiden Klassen angehören:

        .mod_article.block  
        {  
          /* Stil-Angaben */  
        }
        

        Dass das im IE ≤ 6 nicht funktioniert, sollte heutzutage irrelevant sein.

        Qapla'

        --
        Wer möchte nicht lieber durch Glück dümmer als durch Schaden klüger werden? (Salvador Dalí)