Gunnar Bittersmann: Zellenfarbe ändern

Beitrag lesen

@@sl:

ich muss eine Tabelle in einer HTML – Datei präsentieren.

BTW: HTML-Datei. Bei Bindestrichen steht kein Leerzeichen (im Gegensatz zu Gedankenstrichen).

Die Vergabe von Klassennamen "even" und "odd" ist mit JavaScript möglich, hat aber Nachteile:
(1) Das Script läuft erst nach dem vollständigen Laden des Dokuments. Die Tabele wird also erstmal ohne Unterscheidung gerader/ungerader Zeilen angezeigt, später wird neu gerendert.
(2) JavaScript läuft nicht bei allen Nutzern.

Besser ist, die Klassennamen serverseitig in den Quelltext schreiben zu lassen, bspw. mit PHP:

<!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">  
[code lang=css].even {background: #FCC}  
.odd {background: #CCF}

</style>
 </head>
 <body>
  <table id="myTable">
   <tbody><?php $isEven = true; ?>

<tr class="<?php echo ($isEven ? 'even' : 'odd'); $isEven = !$isEven; ?>"><td>foo</td></tr>
    <tr class="<?php echo ($isEven ? 'even' : 'odd'); $isEven = !$isEven; ?>"><td>bar</td></tr>
    <tr class="<?php echo ($isEven ? 'even' : 'odd'); $isEven = !$isEven; ?>"><td>baz</td></tr>
    <tr class="<?php echo ($isEven ? 'even' : 'odd'); $isEven = !$isEven; ?>"><td>quz</td></tr>
   </tbody>
  </table>
 </body>
</html>[/code]

Live long and prosper,
Gunnar

--
Flughafen in Tempelhof
findet jeder Hempel doof.