FreddyS
1
Hallo, ich versuche mit folgendem code die Zeilen einer Tabelle abwechselnd in verschiedenen Farben auszugeben:
[php]
function bgcolor($row = 1)
{
static $i;
static $col = array(‚#fffacd‘,
‚#f0e68c‘,
); // etc.
$bg = $col[(int)($i + .00000001)];
$i += 1 / $row;
if ($i >= count($col)) $i = 0;
return $bg;
}
[/php]
Ausgabe:
[php]
printf(„
Sehen
\n“, bgcolor(1));
[/php]
Die Tabelle hat 4 Spalten, aber nur die letzte (href „Sehen“) wird in abwechselnden Farben gedruckt
Woran kann das liegen
Hi,
schau dir Tabellenzeilen abwechselnd farbig darstellen an. Ich glaube eine Farbzuweisung zu einer Zeile wird nicht von allen Browser interpretiert (wird sie das überhaupt). Du solltest CSS nutzen: background-color: Hintergrundfarbe: CSS-Referenz auf CSS 4 You - The Finest in Stylesheets und damit die einzelnen Spalten einfärben.
Gruß
FreddyS
3
danke, werde ich mir ansehen.
aber trotzdem: das ganze muss irgendwie damit zu tun haben, dass die werte per value usw. zugewiesen werden.
gebe ich in der tabelle (siehe nachfolgenden code) einfach konstanten aus, funktioniert es einwandfrei:
[php]
printf("
Hallejuhah
Himmel
Hölle
\n", bgcolor(1));
[/php]
FreddyS
4
Hat niemand eine erklärung, würde schon gerne die ursache erfahren
gebe ich in der tabelle (siehe nachfolgenden code) einfach konstanten aus,[…]
Hallejuhah
ist keine Konstante, sondern einfach nur Text/ein String.
Hat niemand eine erklärung, würde schon gerne die ursache erfahren
Völlig uninteressant, wenn man dadurch die Semantik aufgibt. Mit HTML vergibt man keine Farben oder positioniert Text in eine bestimmte Ecke!
Nutze CSS! Und ich bin immer noch der Meinung, dass man den Spalten eine Farbe zuweist (mit CSS), nicht der Zeile.
Versuche es erstmal mit den Tipps von selfphp.de. Wenn es dann nicht klappt, kannst du gerne nach dem „Warum?“ fragen!