Alternar colores en las filas de una tabla con PHP

0 - , - 06/02/2009 06:30:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
.fila_0 { background-color: #FFFFFF;}
.fila_1 { background-color: #E1E8F1;}
</style>
</head>
<body>
<table width="300" border="0" cellpadding="0" cellspacing="0" >
<?php  for($i=1;$i<=9;$i++){ ?>
  <tr>
    <td class="fila_<?php echo $i%2; ?>">Fila  <?php echo $i; ?></td>
  </tr>
<?php } ?>
</table>
</body>
</html>

Lo único que hacemos es definir dos estilos:

.fila_0 { background-color: #FFFFFF;}
.fila_1 { background-color: #E1E8F1;}

y mediante la obtención del resto que da la división del número de fila por dos, aplicamos uno u otro.

<td class="fila_<?php echo $i%2; ?>">Fila  <?php echo $i; ?></td>

Para las filas pares el resto sera cero y por tanto aplicamos el estilo "fila_0" y para las impares el resto dará 1 y aplicamos el estilo "fila_1".

Si estamos extrayendo los datos de una consulta a la base de datos el bucle quedaría algo como:

<?php
$i = 0 ;
while( $row = mysql_fetch_row($result)){
?>
     <tr>
           <td class="fila_<?php echo $i%2 ; ?> ">Fila <?php echo $i ; ?> </td>
     </tr>
<?php
$i ++;
}
?>  

Deja tu comentario

  • El comentario debe estar relacionado con el contenido de la entrada.
  • Comentarios ofensivos, con spam o con lenguaje inapropiado serán eliminados.

captcha