pc-nico Geschrieben 16. März 2005 Teilen Geschrieben 16. März 2005 Hallo habe folgdendes Problem: Möchte in einer Tabelle die 1 3 5 7 ... Zeile z.b. in hellgrau haben und die Zeile 2 4 6 8 ... in dunkel grau zu zeit mache ich das so: <table> <tr> <td class="hell"></td> </tr> <tr> <td class="dunkel"></td> </tr> <tr> <td class="hell"></td> </tr> <tr> <td class="dunkel"></td> </tr> <tr> <td class="hell"></td> </tr> <tr> <td class="dunkel"></td> </tr> (Die Klassen sind dann halt irgendwo noch definert) Das bringt natürlich eine sehr hoch redundanz. Gibt es eine Möglichkeit mit CSS sowas nochmehr zu vereinfachen??? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
perdian Geschrieben 16. März 2005 Teilen Geschrieben 16. März 2005 Gibt es eine Möglichkeit mit CSS sowas nochmehr zu vereinfachen??? AFAIK: Nein, gibt es leider nicht. Deshalb wird sowas in der Regel serverseitig bei der Generierung der Seite geregelt, beispielsweise: <?php for($i=0; $i < 10; $i++) { echo "<tr>"; echo "<td style=\"background-color: "; echo ($i % 2 == 0) ? "green" : "blue"; echo "\">"; echo "Text"; echo "</td>"; echo "</tr>"; } ?> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
pc-nico Geschrieben 16. März 2005 Autor Teilen Geschrieben 16. März 2005 danke! ok, das habe ich mir schon gedacht.. Leider ist das nicht möglich, da es sich bei den Tabellen um statische HTML Seiten handelt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Flatscho Geschrieben 16. März 2005 Teilen Geschrieben 16. März 2005 naja wenn du z.b. öfters solche listen serverseitig zusammenbaust, könntest du auch eine einfache klasse schreiben: class Table { var $rows; //... function addRow($row_arr) { $this->rows[] = $row_arr; } function getHtmlCode() { $table = "<table>"; //html code der tabelle zusammenbauen //rows durchloopen und die arrays in rows auch durchloopen $table .= "</table>"; return $table; } function show() { echo $this->getHtmlCode(); } } Lässt sich natürlich noch beliebig erweitern Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 16. März 2005 Teilen Geschrieben 16. März 2005 Gibt es eine Möglichkeit mit CSS sowas nochmehr zu vereinfachen??? Ja gibt es laut standard! http://www.w3.org/Style/Examples/007/evenodd.html Aber leider kann das nicht jeder Browser siehe: http://dean.edwards.name/IE7/compatibility/nth-child.html (mit IE anschauen!) table.even tr:nth-child(even) { background: green; } Gruß, Markus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
perdian Geschrieben 16. März 2005 Teilen Geschrieben 16. März 2005 Ja gibt es laut standard! http://www.w3.org/Style/Examples/007/evenodd.htmlDas sieht ja richtig interessant aus. Aber leider kann das nicht jeder BrowserNaja wenn ich da lese "introduced in November 2001" dann wird es wohl noch locker bis 2010 dauern, bis die meisten Browser soweit sind und damit umgehen können Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 16. März 2005 Teilen Geschrieben 16. März 2005 Naja wenn ich da lese "introduced in November 2001" dann wird es wohl noch locker bis 2010 dauern, bis die meisten Browser soweit sind und damit umgehen können Naja ich schätze mal der FF kann das in der nächsten Version die im März kommt und der IE 10 wirds den CSS Std. 1.0 immer noch nicht richtig beherrschen... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.