Die Browser ignorieren im Standards Mode Klassen und IDs, obwohl die Syntax des Stylesheets richtig ist.
Gemäß der W3C-Spezifikation für HTML 4 sind die Werte für Klassen und IDs »case-sensitiv«, d. h. es besteht ein Unterschied zwischen Groß- und Kleinschreibung. Während die Browser im Quirks Mode diesen Unterschied nicht beachten, ist im Standards Mode die korrekte Schreibweise notwendig.
Des Weiteren dürfen Klassen und IDs nicht mit einer Ziffer beginnen. Der Internet Explorer und Opera zeigen auch hier unterschiedliches Verhalten in Abhängigkeit vom Darstellungsmodus. Im Quirks Mode werden Klassen und IDs mit falscher Schreibweise interpretiert, im Standards Mode werden sie ignoriert. Mozilla, Safari und Konqueror sehen die falsche Schreibweise unabhängig vom Darstellungsmodus als Fehler an und ignorieren Klassen und IDs mit führender Ziffer. Dabei ist zu beachten, dass die gesamte CSS-Regel (Selektoren und Deklarationsblock) inklusive korrekter Selektoren ignoriert wird.
Es ist darauf zu achten, dass die Schreibweise der Werte von Klassen und IDs im HTML-Quelltext exakt mit der Schreibweise der Selektoren im Stylesheet übereinstimmt bzw. die Namen nicht mit einer Ziffer beginnen.
<!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" xml:lang="de">
<head>
<title>DOCTYPE-Switch: Browser ignorieren Klassen und IDs</title>
<style type="text/css">
.absatz {
background-color:#fcfcfc;
border:dotted 1px #009;
margin:1.5em;
padding:1em;
}
.absatz2, .2absatz {
background-color:#fcfcfc;
border:dotted 1px #009;
margin:1.5em;
padding:1em;
}
</style>
</head>
<body>
<p class="absatz"> </p>
<p class="ABSATZ"> </p>
<p class="2absatz"> </p>
<p class="absatz2"> </p>
</body>
</html>
Letzte Änderung des Inhaltes: 21.09.05