Css akzeptiert kein % o.O
Nico
- css
0 Beat0 Der Martin0 Nico0 Beat
Tag Community,
ich habe früher eine HP erstellt, wo ich die Höhen angabe mit % bemacht habe.
Nun wollte ich mir eine neue HP machen und er akzeptiert plötzlich keine % angabe mehr.
Hier mein Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>
<title>Nico Nowakowski</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta name="description" content="" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<link href="styles/styles.css" type="text/css" rel="stylesheet" />
</head>
<body>
<div class="nocontent">Nocontent</div>
<div class="header">Header</div>
<div class="navigation">Navigation</div>
<div class="content">Content</div>
<div class="footer">Footer</div>
</body>
</html>
.nocontent
{
height: 5%;
text-align: center;
}
.header
{
height: 10%;
text-align: center;
}
.navigation
{
height: 5%;
text-align: center;
}
.content
{
height: 75%;
text-align: center;
}
.footer
{
height: 5%;
text-align: center;
}
Wenn ich dies nun auf meinen Server lade, dann zeigt er alles direkt untereinander an, anstatt die Elementhöhe mit zu berechnen.
Wenn ich nun aber statt %, px nehme, dann macht er es.
Es muss also irgendwie an den % Angaben liegen.
Wie behebe ich das Problem?
Dies ist genau der selbe Code wie auf meiner alten Homepage, aber nun funktioniert es irgendwie nichtmehr o.O
Ich hoffe ihr könnt mir helfen
Tag Community,
ich habe früher eine HP erstellt, wo ich die Höhen angabe mit % bemacht habe.
Nun wollte ich mir eine neue HP machen und er akzeptiert plötzlich keine % angabe mehr.
Doch, tut ersiees.
100% von Nichts ist aber immer noch nichts.
Du willst zuerst mal html und body eine Höhe geben, auf welche sich deren Children beziehen können.
Wenn ich dies nun auf meinen Server lade, dann zeigt er alles direkt untereinander an, anstatt die Elementhöhe mit zu berechnen.
Was hat das mit deinem Server zu tun?
mfg Beat
Hi,
ich habe früher eine HP erstellt, wo ich die Höhen angabe mit % bemacht habe.
Nun wollte ich mir eine neue HP machen und er akzeptiert plötzlich keine % angabe mehr.
und wer ist "er"?
<body>
<div class="nocontent">Nocontent</div>
<div class="header">Header</div>
<div class="navigation">Navigation</div>
<div class="content">Content</div>
<div class="footer">Footer</div>
</body>
.nocontent
{
height: 5%;
text-align: center;
}
[...]
.footer
{
height: 5%;
text-align: center;
}
Worauf sollen sich denn die 5% beziehen? Anders gefragt: 5% wovon?
Prozentuale Höhenangaben beziehen sich immer auf die Höhe des Elternelements. Für dieses hast du aber keine Höhe angegeben; es hat somit den Defaultwert height: auto und ist damit gerade so hoch, wie sein Inhalt es erfordert.
> Wenn ich dies nun auf meinen Server lade, dann zeigt er alles direkt untereinander an, anstatt die Elementhöhe mit zu berechnen.
Wer "er"? Der Server? Nein, der Browser. Und recht hat er.
> Wie behebe ich das Problem?
Indem du allen(!) Vorfahrenelementen ebenfalls eine definierte Höhe gibst.
> Dies ist genau der selbe Code wie auf meiner alten Homepage, aber nun funktioniert es irgendwie nichtmehr o.O
Lief die vielleicht im Quirks Mode, lässt den Browser also raten, was der Autor gemeint haben könnte?
So long,
Martin
--
Die Natur ist gnädig: Wer viel verspricht, dem schenkt sie zum Ausgleich ein schlechtes Gedächtnis.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
Hm komische Sache,
Wenn ich nun die DOCTYPE Deklaration rausnehme, dann funktioniert das alles prima o.O
Woran könnte das den liegen?
Wird beim div Element in XHTML irgendetwas vorausgesetzt, welches ich evtl. nicht eingehalten habe?
Wenn ich nun die DOCTYPE Deklaration rausnehme, dann funktioniert das alles prima o.O
Woran könnte das den liegen?
Daran, dass im Quark html und body eine Höhe von 100% als Browser-Default haben.
Wird beim div Element in XHTML irgendetwas vorausgesetzt, welches ich evtl. nicht eingehalten habe?
Nein. Es geht um den Strict versus Quirksmode.
mfg Beat
Wenn ich nun die DOCTYPE Deklaration rausnehme, dann funktioniert das alles prima o.O
Woran könnte das den liegen?
Daran, dass im Quark html und body eine Höhe von 100% als Browser-Default haben.
Wird beim div Element in XHTML irgendetwas vorausgesetzt, welches ich evtl. nicht eingehalten habe?
Nein. Es geht um den Strict versus Quirksmode.
mfg Beat
Danke für deine schnellen Antworten, es lag wirklich daran das in HTML das html tag und das body tag eine Größe von 100% des browser bekommen und bei XHTML muss man das manuell anlegen.
Als ich also html und body eine Größe von 100% zugewiesen habe, funktionierte alles prima :)
Danke dir :D
Hallo,
Danke für deine schnellen Antworten, es lag wirklich daran das in HTML das html tag und das body tag eine Größe von 100% des browser bekommen und bei XHTML muss man das manuell anlegen.
nein, das hat nichts mit HTML im Gegensatz zu XHTML zu tun; in HTML bekommst du genau das gleiche Verhalten.
Es ist ausschießlich Quirks Mode (Ratemodus, fehlender oder unvollständiger DOCTYPE) gegenüber Standards Mode (Regelkonformer Modus, vollständiger DOCTYPE).
Als ich also html und body eine Größe von 100% zugewiesen habe, funktionierte alles prima :)
So gehört's auch.
Auch in HTML.
Ciao,
Martin
@@Beat:
nuqneH
Nein. Es geht um den Strict versus Quirksmode.
Nein. Es geht um den standardkonform versus Quirksmode.
Qapla'