Tabelle soll ganze Fläche ausfüllen
Aziz
- html
0 chlori0 Aziz
0 dbenzhuser0 Aziz
Hallo!
Mich beschäftigt momentan das Problem, dass es in einem Dokument, das als "HTML 4.01 transitional" markiert ist, nicht möglich ist die Höhe einer Tabelle auf die Höhe der sichtbaren Browserfläche anzupassen. In einem Dokument, das nicht wie beschrieben markiert ist, funktioniert es, was für mich jedoch irgendwie ein Phänomen darstellt.
Wie kann ich das also auch in einem HTML4.01-Dokument zum Funktionieren bringen? (Verzeiht falls diese Frage bereits behandelt wurde. Suchfunktion wollte nicht..)
Es folgt ein simples Beispiel:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>test</title>
</head>
<body>
<table border="1" width="100%" height="100%">
<tr>
<td>
Some Text
</td>
</tr>
</table>
</body>
</html>
Hi
<table border="1" width="100%" height="100%">
Kann es sein, dass du Tabellen für Layout-Zwecke missbrauchst?
Benutze CSS.
Gruss
chlori
Kann es sein, dass du Tabellen für Layout-Zwecke missbrauchst?
Benutze CSS.
Da hast du wohl Recht :-/
N'Obend
(...) "HTML 4.01 transitional" (...) In einem Dokument, das nicht wie beschrieben markiert ist, funktioniert es, was für mich jedoch irgendwie ein Phänomen darstellt.
Liegt am so genannten Quirks-Mode, den der IE dann verwendet, wenn kein, oder ein unzulänglicher, Doctype angegeben ist. Das Verhalten mit Doctype ist also das Standardkonforme.
Problemlösung (hoffe ich...):
das height="100%" in der Tabelle bezieht sich auf die Größe des Elternelements! In deinem Fall body. Es muss also auch dem body eine entsprechende Höhe zugewiesen werden. Diese bezieht sich ihrerseits wieder auf das Elternelement -> html.
Wenn du also die Tabelle auf 100% Höhe bekommen willst, muss in deinen Style-Bereich (CSS) etwa folgendes rein:
html, body {height:100%}
Dann klappts auch mit der Tabelle.
Tschö,
dbenzhuser
Vielen Dank! Ich werds gleich ausprobieren.