font-size in Style-Definition von "body"
Markus
- css
0 Daniel unreg0 Markus
Hallo,
ich habe das Problem, dass die Schrifgrößen-Festlegung in einer Style-Definition für das "body"-Element nicht in einer Tabelle wirkt, aber die festgelegte Schriftart schon.
Beispiel 1:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>Test1</title>
<style type="text/css">
body {font-family: "Times New Roman",Times,serif; font-size:10px;}
</style>
</head>
<body>
Hier steht Text in Times New Roman und in der Schriftgröße 10
<table>
<tr><td>Hier steht Text in Times New Roman aber nicht in Schrifgröße 10! Warum?</td></tr>
</table>
</body></html>
Beispiel 2:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>Test2</title>
<style type="text/css">
body {font-family: Arial,Helvetica,non-serif; font-size:10px;}
</style>
</head>
<body>
Hier steht Text jetzt in Arial und in der Schriftgröße 10
<table>
<tr><td>Hier steht Text jetzt auch in Arial aber immer noch nicht in Schrifgröße 10! Warum??</td></tr>
</table>
</body></html>
In einigen Quellen habe ich gelesen, dass ich die Schriftgröße für die Tabelle zusätzlich definieren müßte, in anderen Quellen steht, dass das nur für alte Browser gilt. Außerdem: Die Schriftart wird doch richtig auf die Tabelle übergeben!
Getestet auf Firefox 2 und IE7.
Mache ich etwas falsch bzw. was mache ich falsch?
Markus
Hallo,
das liegt daran, dass du den Browser in den Ratemodus versetzt und nicht in den standardkonformen Modus. [Der DOCTYPE-Switch und seine Auswirkungen].
Arbeite nie im Quirksmodus.
Gruß, Daniel.
Hallo Daniel,
Danke für die Hilfe, mit der vollständigen Doctype-Deklaration:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
funktioniert es! Ich bin nur etwas verwundert, dass der Quirksmodus zwar die Schriftgröße ignoriert, aber nicht die Schriftart...
Noch schnell eine Nachfrage:
Kann man einen Browser "von außen" (d.h. ohne Änderung der HTML-Datei) in einen bestimmten Modus zwingen? Also dass er z.B. eine standardkonforme Seite im Quirksmodus anzeigt (und umgekehrt)?
Danke, Markus
Hallo,
funktioniert es! Ich bin nur etwas verwundert, dass der Quirksmodus zwar die Schriftgröße ignoriert, aber nicht die Schriftart...
Das ist halt die Immitierung alter Browserbugs. Diesen Fehler haben merkwürdigerweise auch mehrere Browser übernommen. Da steckt wohl keine Logik dahinter ;)
Noch schnell eine Nachfrage:
Kann man einen Browser "von außen" (d.h. ohne Änderung der HTML-Datei) in einen bestimmten Modus zwingen? Also dass er z.B. eine standardkonforme Seite im Quirksmodus anzeigt (und umgekehrt)?
Grundsätzlich ist die Antwort „Nein“.
Als Benutzer kannst du im Opera die opera6.ini bearbeiten (Siehe Abschnitt „Overriding the DOCTYPE Switch“), um alle Seiten in einem bestimmten Modus anzuzeigen, aber das gilt dann nur für dich als Benutzer.
Der kommende Internet Explorer ermöglicht, was du dir vorstelltst, davon ist allerdings abzuraten, denn wenn du ein Dokument von Metainformationen abhängig machst, die nicht jederzeit gegeben werden können, schneidest du dir nur in das eigene Fleisch.
Im IE8 wird man über einen HTTP-Header (böse) bzw. einen entsprechenden Meta-Tag (wenns denn sein muss) den Darstellungsmodus von IE 5.5, 7 und 8 aktivieren können, unabhängig vom Doctype.
Du solltest allerdings beachten, dass MS sein Versprechen nicht halten kann und die eigentlich unveränderten Modi von IE 5.5 und 7 sich in der kommenden Version durchaus unterschiedlich verhalten werden. Daher solltest du auf den standardkonformen Modus des IE8 setzen, was mit deinem vollständigen Doctype aber ohnehin gegeben ist.
Gruß, Daniel.