Tabellen brechen unter Netscape zusammen
Tobi
- css
0 Tobias K.0 Tobi
0 Kai Lahmann
Hallo,
Ich habe folgendes Problem:
Ich habe mehrere ineinander verschachtelte Tabellen. Nun will ich die übergeordnete Tabelle (natürlich auch die untergeordneten) auf einen Schlag ausblenden und habe deshalb ein style command in den table-tag eingebaut, der mithilfe von JavaScript display entweder auf none oder inline setzt. Sobald ich aber in den Table Tag nun style="display:inline" einsetze, kollabiert der äußere Tabellenrahmen und somit lässt sich auch keine spezifische Breite für die umschließende Tabelle angeben.
Hiermal ein Beispielcode:
<html>
<body>
<table width="100%" border="1" bordercolor="red" style="display:inline">
<colgroup>
<col width="90px">
<col width="">
</colgroup>
<tr>
<td>Test1</td>
<td>Test2</td>
</tr>
<tr>
<td>
<table border="2">
<colgroup>
<col width="30">
<col width="">
</colgroup>
<tr>
<td>Test4</td>
<td>Test5</td>
</tr>
<tr>
<td>Test6</td>
<td>test7</td>
</tr>
</table>
</td>
<td>Test8</td>
<tr>
<td>Test9</td>
<td>Test10</td>
</tr>
</table>
</body>
</html>
Unterm IE klapp das ganze übrigens wunderbar. Aber unter NS 7 nicht. Wer es probiert, sollte zum Test mal das style-Attribut weglassen. das bordercolor-Attribut macht den Effekt besser sichtbar.
Hat jemand zufällig eine Erklärung dafür oder weiß, wie man das umgehen kann?
Danke
Tobi
Hallo Tobi,
Sobald ich aber in den Table Tag nun style="display:inline" einsetze, kollabiert der äußere Tabellenrahmen und somit lässt sich auch keine spezifische Breite für die umschließende Tabelle angeben.
Vielleicht solltest du display:block; verwenden, da table ein block-Element ist. Ich bin mir jetzt aber nicht sicher, ob das dein Problem löst :-)
Grüße aus Nürnberg
Tobias
Vielleicht solltest du display:block; verwenden, da table ein block-Element ist. Ich bin mir jetzt aber nicht sicher, ob das dein Problem löst :-)
Hallo,
Vielen Dank für die schnelle Antwort, nun kollabiert die äüßere Tabelle nicht mehr.
Das nächste Problem ist aber, dass die innere Tabelle, auch wenn ich width auf 100% angebe, trotzdem nur so viel Platz einnimmt, wie sie Inhalt hat. Irgendeine Idee, woran das nun liegt?
Tobi
hi
<table width="100%" border="1" bordercolor="red" style="display:inline">
kein wunder, mittelt display:inline ist das keine Tabelle mehr, sondern Fließtext. Wenn du statt <table> <span> schreibst, kommt das gleiche bei raus.
display:block macht hier übrigens genauso wenig Sinn, du solltest eher zwischen display:table und display:inline-table wählen.
Grüße aus Bleckede
Kai