Und wieso haben dann der div-Container, die Kopfzelle, und die erste Tabellenzelle unterschiedliche Farben wenn es dieselbe Klasse ist?
Weil du durch die Kombination mit dem Element-Selektor unterschiedliche Gruppen von Elementen ansprichst du diese anders formatierst.
Dass du dabei unlogische Kombinationen von Eigenschaften wählen kannst, ist nicht die Schuld des Systems sondern bestenfalls deine ;)
Ein gutes Beispiel wäre z.B. die Klasse "warnung" - ein p-Element mit der Klasse "warnung" könnte einen roten Rahmen und scharze Schrift haben, während ein strong-Element mit der Klasse "warnung" über keinen Rahmen, dafür aber rote Schrift verfügt.
Oder kann ich in einer Klasse verschiedene HTML-Elemente definieren
Umgekehrt, du kannst mehreren HTML-Elementen dieselbe Klasse zuweisen.
Zu welchem Zweck?
Ich habe einen div-Container. In dem befindet sich ein Formular und eine Tabelle zur Datenerfassung. Diese werden per CSS formatiert. Wenn ich die entsprechenden Selektoren jetzt div.erfassungsfrm, table.erfassungsfrm, th.erfassungsfrm, td.erfassungsfrm nennen würde, würde ich das übersichtlich finden. Vielleicht.
Ich rate dir, dich mit Grundlagen von HTML und CSS auseinanderzusetzen - du willst offenbar einer Gruppe von Elementen in einem gemeinsamen gruppierenden Element eine bestimmte Formatierung zukommen lassen.
Dafür ist der Nachfahrenselektor (" ") wesentlich besser geeignet als jedes Element mit einer Klasse vollzusch^Wversehen - in deinem Fall wahrscheinlich sogar eine ID und keine Klasse. Sofern das Formular nur 1x vorkommen kann ist eine ID das mittel der Wahl, gibt es hingegen verschiedene Typen von Formularen/Tabellen innerhalb dieser Container oder mehrere Formualre dieser Art wäre eine Klasse interessanter.
Aussehen könnte das so:
<div class="loeschen">
<form />
<table />
</div>
<div class="aendern">
<form />
<table />
</div>
<div class="loeschen">
<form />
<table />
</div>
.erfassen form {
border: 1px solid green;
}
.aendern form {
border: 1px solid blue;
}
.loeschen form {
border: 1px solid red;
}
Vielleicht sollte ich in's Wochenende gehen ;-)
Möglicherweise.