Tabelle: height (CSS) wird ignoriert vom IE
Lutz Wagner
- html
0 Vinzenz Mai0 Lutz Wagner0 ChrisB
Was mach ich falsch? Der IE bis einschl. Version 7 ignoriert jegliche Angabe zur Zellenhöhe (height). Egal ob als Attribut in td oder als CSS-Angabe.
Das einzig 'Besondere' in meinem Fall ist ROWSPAN. Meine Tabelle hat zwei Spalten und zwei Zeilen, aber nur 3 Zellen, d.h. ich verbinde die obere rechte und die untere rechte Zelle zu einer. Die Höhe der linken oberen Zelle möchte ich fixieren. Meines Wissen ist ROWSPAN und COLSPAN nicht deprecated, warum also interpretiert der IE die height-Angabe nicht?
Das folgende Layout funktioniert prima in Firefox und Opera, nicht aber im IE:
<table border=1 width=800 style="table-layout:fixed; overflow:hidden;">
<colgroup>
<col width=100>
<col width=700>
</colgroup>
<tr>
<td rowspan=1 style="height:80px; font-size:8px;">
Diese Zelle soll immer genau 80 Pixel hoch sein.
</td>
<td rowspan=2>
<img src="spacer.gif" width=600 height=700>
</td>
<tr rowspan=1>
<td valign=top> Irgend ein Inhalt in der seitlichen Spalte </td>
</tr>
</table>
Gibt es noch irgendwelche geheimnisvollen Parameter, die auch dem IE sagen, was er tun soll ?
Danke für jeden Hinweis.
Lutz Wagner
Hallo,
Das einzig 'Besondere' in meinem Fall ist ROWSPAN.
es ist das relevante.
Meine Tabelle hat zwei Spalten und zwei Zeilen, aber nur 3 Zellen, d.h. ich verbinde die obere rechte und die untere rechte Zelle zu einer. Die Höhe der linken oberen Zelle möchte ich fixieren. Meines Wissen ist ROWSPAN und COLSPAN nicht deprecated, warum also interpretiert der IE die height-Angabe nicht?
weil er es darf.
Das folgende Layout funktioniert prima in Firefox und Opera, nicht aber im IE:
und alle machen's richtig, sogar der IE :-)
Gibt es noch irgendwelche geheimnisvollen Parameter, die auch dem IE sagen, was er tun soll ?
Verwende *keine* verbundenen Zellen, wenn Du bestimmte Höhen benötigst, siehe dazu meine Ausführungen in diesem Archivbeitrag.
Freundliche Grüße
Vinzenz
Hallo,
danke für deine Antwort, die mir allerdings - vermutlich wenig überraschend - nicht weitergeholfen hat.
Verwende *keine* verbundenen Zellen, wenn Du bestimmte Höhen benötigst, siehe dazu meine Ausführungen in diesem Archivbeitrag.
»»
Der Link zu deinem Beitrag war sehr aufschlußreich. Es scheint noch mehr Leute zu geben, die 'aus bestimmten Gründen ein Tabellen-Layout benötigen'. Und dazu sich dieses äußerst flexiblen Features des ROWSPANs zu bedienen.
Und zu sagen 'und alle machen's richtig, sogar der IE :-)' mag formalistisch betrachtet zutreffend sein, aber ignoriert die Tatsache, dass alle Browser das Tabellen-Layout zu dem vom Entwickler gewünschten Ergebnis führen. Nur der IE nicht.
Und die Freiheit in CSS 2.1, die du zitiert hast, leuchtet mir auch nicht ein: Diese Freiheit ist doch ganz klar beschränkt durch die Bedeutung der height-Spezifikation in CSS. Es steht nirgendwo geschrieben, dass die Angabe einer Zellenhöhe nach Browser-Belieben befolgt werden kann oder nicht.
Und schlußendlich geht deine IE-Apologie vollends ins Leere, denn in deinem Beitrag lese ich, dass immerhin der IE ab Version 8 sich dem Verhalten anderer Browser angepasst hat.
Und das ist nicht mehr und nicht weniger, als Programmierer-Anweisungen zu befolgen, so, wie sie geschrieben stehen.
Es hat schon seinen Grund, warum der IE bei Anwendern wie auch bei Entwicklern immer mehr an Reputation verliert.
Dennoch, nochmals: Danke für deine Ausführungen, jedenfalls weiß ich jetzt, dass ich nicht weiter suchen muß. Der IE ist eben, wie er ist.
Viele Grüße,
Lutz Wagner
Hi,
Und die Freiheit in CSS 2.1, die du zitiert hast, leuchtet mir auch nicht ein: Diese Freiheit ist doch ganz klar beschränkt durch die Bedeutung der height-Spezifikation in CSS. Es steht nirgendwo geschrieben, dass die Angabe einer Zellenhöhe nach Browser-Belieben befolgt werden kann oder nicht.
Da steht explizit,
CSS 2.1 does not specify how cells that span more than one row affect row height calculations except that the sum of the row heights involved must be great enough to encompass the cell spanning the rows.
Und nicht explizit spezifiziert bedeutet nun mal, dass dem UA gewisse Freiheiten bei der Umsetzung bleiben.
MfG ChrisB