Scrollbares <div> in einer variablen Tabelle
red-m
- html
0 Vinzenz Mai0 red-m
Hallo,
ich habe folgendes Problem, welches beim Firefox auftritt. Der IE macht eigentlich genau was ich will.
In einer Tabelle der Form
<table style="table-layout:fixed;
border-collapse:collapse;
border-spacing:0px;
padding:0px;
margin:0px;
border:0px;
height:100%;
width:100%;"
cellpadding="0" cellspacing="0" border="0">
<colgroup>
<col style="width:13px">
<col style="width:488px">
<col style="width:auto">
<col style="width:201px">
<col style="width:13px">
</colgroup>
<tr style="height:121px">
<td colspan="2"></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:30px">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:3px">
<td colspan="5"></td>
</tr>
<tr style="height:15px">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:auto">
<td colspan="2"></td>
<td><div id="divmain"><!--Main--></div></td>
<td></td>
<td></td>
</tr>
<tr style="height:5px">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="height:6px">
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
befindet sich in der in Breite und Höhe variablen Zelle der <div> Bereich "divmain". Dieser soll sich nun an die Größe der Zelle anpassen und für den Fall, dass sein Inhalt zu groß wird, einen Scrollbalken zur Verfügung stellen. Beim IE funktioniert das wie gesagt mit
#divmain {
width:100%;
height:100%;
overflow:auto;
}
nur der Firefox vergrößert stattdessen die Tabelle, obwohl eigentlich table-layout auf "fixed" gesetzt ist.
Kennt jemand von euch eine Möglichkeit, wie ich dies auch im Firefox richtig darstellen kann?
Vielen Dank
Hallo,
befindet sich in der in Breite und Höhe variablen Zelle [...]
Deine Zelle ist, wie Du ja selbst sagst, in Breite und Höhe variabel.
nur der Firefox vergrößert stattdessen die Tabelle, obwohl eigentlich table-layout auf "fixed" gesetzt ist.
Warum sollte es falsch sein, wenn sich ein Browser an Deine Vorgaben hält - und die Breite und Höhe der Zelle an den Inhalt anpaßt. Mir erscheint dieses Verhalten logisch und richtig.
Kennt jemand von euch eine Möglichkeit, wie ich dies auch im Firefox richtig darstellen kann?
Wenn Du dafür sorgst, dass sich der IE im standardkonformen Modus befindet, wirst Du feststellen, dass sich der IE weitgehend genauso verhält wie Firefox - und sich treu und brav an Deine Vorgaben hält (getestet mit XHTML 1.0 strict in IE 7).
Grundsätzlich ist es die bessere Idee, zuerst in Browsern wie Firefox oder Opera zu testen und anschließend noch die nötigen Anpassungen für die diversen IE-Varianten vorzunehmen.
Noch ein Tipp zum Schluss: SELFHTML hat ein interessantes Kapitel: CSS-basierte Layouts. Vielleicht kann dieses Kapitel auch Dich dazu motivieren, mal auf Tabellenlayouts zu verzichten - ich ging jedenfalls davon aus, dass es sich bei Deiner Tabelle um eine Layouttabelle handelt.
Freundliche Grüße
Vinzenz
Hallo,
danke für die Antwort. Ich habe schon von vielen gehört, dass Layout-Tabellen nicht gerade guter Stil sind.
Aber nun eine andere Frage, ist es dann mit CSS-basierten Layouts möglich, ein Layout zu produzieren, dass nur das Browserfenster füllt (ohne Scrollbalken) und darin einen <div> - Bereich variabler Größe zu haben, in welchem man den Inhalt dann scrollen kann?
Viele Grüße
red-m