Rolf B: CSS Naming Conventions...

Beitrag lesen

Hallo Tschoartsch,

nein, das hast Du falsch verstanden.

.Farbe {
   color: red;
}

definiert nicht die Klasse Farbe. Klassen werden genau genommen nirgends definiert. Wenn ein Klassenname verwendet wird, ist er da. Einfach so.

Du kannst

  • HTML Elementen eine Klasse zuordnen, im HTML mittels des class Attributs, oder in JavaScript durch Zuweisung an die className Eigenschaft oder durch Verwendung der classList.add Methode.
  • CSS Regeln schreiben, die im Selektor eine Klasse verwenden.

Lektüre im Self-Wiki: Selektoren und Spezifität, aber lies erstmal hier weiter.

Letzteres hast Du getan: du hast eine Regel geschrieben, die einen Klassen-Selektor für die Klasse "Farbe" enthält. Diese Regel setzt für die Elemente, auf die der Selektor zutrifft, die color Eigenschaft auf "red".

Dann hast Du noch eine Regel geschrieben, mit dem gleichen Selektor, die der color-Eigenschaft den Wert "green" zuweist. Weil die beiden Selektoren die gleiche Spezifität haben, gewinnt die Regel, die als letztes kommt.

Und die dritte Regel hat einen Selektor, der alle Elemente mit der Klasse "Animation" trifft. Der Keyframe-Name "Animation" ist davon aber unabhängig. Klassen und Keyframes sind unterschiedliche Namensräume. So wie Zeitschriften und Autos (Focus).

Rolf

--
sumpsi - posui - obstruxi