|
|||
Tabellen-Spaltenbreite im FF stimmt nicht
Hallo,
vermutlich ein bekannter FF-Bug, mir bisher jedoch noch nicht bekannt. Folgendes Szenario: HTML-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Test</title> <style type="text/css"> table { width: 100%; margin-bottom: 1em; border-collapse: collapse; } thead th { border: 1px solid #90B4D8; padding: 3px; background-color: #C7D9EC; font-weight: bold; text-align: left; } tbody td { border: 1px solid #90B4D8; padding: 3px; vertical-align: top; } .name { width: 200px; } .colA, .colB { width: 200px; } .colAB { width: 407px; } </style> </head> <body> <table cellspacing="0"> <thead> <tr> <th colspan="4">Tiere</th> </tr> </thead> <tbody> <tr> <td class="name">Wolf</td> <td>Der Wolf (Canis lupus) ist eine Raubtierart ...</td> <td class="colA">200px</td> <td class="colB">200px</td> </tr> </tbody> </table> <table cellspacing="0"> <thead> <tr> <th colspan="4">Haushaltsgeräte</th> </tr> </thead> <tbody> <tr> <td class="name">Bügeleisen</td> <td>Ein Bügeleisen ist ein Gerät zum Glätten ...</td> <td colspan="2" class="colAB">407px (2x 200px + 2x 3px padding + 1px border)</td> </tr> </tbody> </table> </body> </html> Zusätzlich noch max-width: 407px; zu schreiben hat keine Auswirkung. Man könnte die head-Zeile so aufteilen: <th colspan="2">Haushaltsgeräte</th> <th class="colA"> </th> <th class="colB"> </th> Das class="colAB" wäre dann überflüssig. Jedoch habe ich dann senkrechte border-Striche die dort nicht sein sollen. Um die dann wegzubekommen, muß ich wieder extra Klassen definieren die border-left bzw. border-right auf 0 setzen - würde ich mir eigentlich gern sparen. Kennt jemand einen einfachen Workaround? Danke und Gruß |
Sponsored Links |
|
|||
Hmm, ich hatte die Seite gestern unter IE6, Opera 10 und FF3 getestet und da war der FF der einzige der diesen "Bug" aufwies.
Inzwischen habe ich noch ein paar weitere Browser getestet: Feste Spaltenbreite: - IE 6+7 - FF 1+2 - NS 7+8+9 - Opera 7+8+9+10 Variable Spaltenbreite: - IE 8 - FF 3+4 - Chrome 5 - Safari 3+4+5 Entweder ist es also ein Bug der Browser aus der oberen oder der aus der unteren Liste - oder es handelt sich um eine ungenaue Definition, bei der die Browserhersteller frei interpretieren können. Egal ob Bug oder nicht - ich werde dann wohl die Variante mit den extra <th>-Tags verwenden und neue Klassen definieren die border-left und -right überschreiben Gruß Plasm |
Sponsored Links |
|
|||
Dadurch werden die 2 rechten Spalten aber größer als die angegebenen 200px. Laut selfthml wirkt sich fixed auf die Breitenangaben der 1. Zeile aus - aber genau da liegt ja das Problem - die 1. Zeile hat keine Breitenangaben sondern erst die 2.
Man kommt also wohl nicht drum herum die Breite der Spalten in der 1. Zeile zu notieren (wie im letzten Abschnitt des 1. Postings beschrieben) |
|
||||
Ich denke an eine ganz andere Lösung: Deine th umfasst alle 4 Spalten, ist also vielmehr eine Überschrift, und sollte daher auch entsprechend ausgezeichnet werden - bei Tabellen gibt es dafür caption (oder man nimmt einfach eine ganz normale hx), und dann wirkt auch table-layout: fixed; wie gewünscht.
__________________
Wer keinen Link auf seine problembehaftete Seite posten kann, weil diese noch nicht online ist: Testcase bauen, online stellen, Link posten. Internet-Grundregel: Unbekannte Begriffe googeln! (Erspart 99% aller Nachfragen.) Geändert von heiko_rs (02.09.2010 um 15:40 Uhr) |
|
|||
Tja, stimmt eigentlich. Die th-Zeile kommt daher, dass vorher über den rechten beiden Spalten noch je ein Bild war (Sprach-Fahnen). Diese Sprach-Info ist nun aber in die einzelnen Zellen gerutscht wodurch die Überschriften-Bilder wegfielen und nun auch die ganze Zeile "weg" könnte.
Ich denke sogar, dass ich fixed dann gar nicht mehr benötige. Übrigens verhielten sich alle Browser gleich nachdem ich fixed eingebaut hatte (wenn auch nicht so wie ich es erwartet hätte) - nur bei Opera hatte die Angabe keine Wirkung... Danke und Gruß Plasm |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Gliederungen (Tabellen???) mit CSS | Boof | CSS | 6 | 14.02.2009 21:21 |
Datenbakn in andere kopieren, wenn Anzahl der Tabellen unbekannt | paracelsus | Serveradministration und serverseitige Scripte | 26 | 15.09.2008 18:15 |
Mehrere Tabellen über ein Menu auswählen | Xinor | CSS | 1 | 24.02.2008 07:18 |
Warum keine Tabellen? | sinot | CSS | 8 | 06.05.2006 17:47 |
Tabellen in <div>-Tags | dexter2000 | CSS | 9 | 19.05.2005 10:53 |