0

我有一个页面显示球队联赛位置的表格,我试图让顶行一种颜色,第二行另一种颜色,底部两种另一种颜色。这是为了突出获胜者、晋级和降级。我附上了代码,你可以看到它已经设置为在前 2 之后和最后 2 之前添加一行。请有人帮忙吗?我已经研究过,但我很挣扎:(我使用 CSS。

    {
     //Lets print data
     $j=1;
     $i=0;
     while($i< $qty)
     {
    if(isset($draw_line))
    {
      //Tarkistetaan, piirretäänkö erotusviiva
      for($k = 0 ; $k < sizeof($draw_line) ; $k++)
      {
        if($draw_line[$k] == $i)
        {
            $templine_width = $tb_width-20;
            echo"<tr>
            <td height=\"2\" colspan=\"20\" align=\"center\" valign=\"middle\"> 
                        <img src=\"images/line.png\" width=\"$templine_width\" height=\"1\" ALT=\"\"><br>
            </td>
            </tr>";
        }
      }
    }
    echo"<tr><td align=\"center\" height=\"25\" cellspacing=\"1\" valign=\"middle\" bgcolor=\"$bg1\">$j</td>
            <td align=\"left\" valign=\"middle\" cellspacing=\"1\" bgcolor=\"$bg1\">&nbsp$team[$i]</td>
        <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";
    if($sort == 'pld')
        echo'<b>';
    echo"$pld[$i]";

    if($sort == 'pld')
       echo'</b>';
    echo"</td>
    <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";
    if($sort == 'tw')
           echo'<b>';
    echo"$wins[$i]";
    if($sort == 'tw')
           echo'</b>';
    echo"</td>
    <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";
    if($sort == 'td')
        echo'<b>';
    echo"$draws[$i]";
    if($sort == 'td')
            echo'</b>';
    echo"</td>
    <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";
    if($sort == 'tl')
            echo'<b>';
    echo"$loses[$i]";
    if($sort == 'tl')
        echo'</b>';
    echo"</td>
    <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";
    if($sort == 'tf')
        echo'<b>';
    echo"$goals_for[$i]";
    if($sort == 'tf')
        echo'</b>';
    echo"</td>
    <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";

    if($sort == 'ta')
        echo'<b>';
    echo"$goals_against[$i]";
    if($sort == 'ta')
        echo'</b>';
    echo"</td>
    <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";
    if($sort == 'GD')
        echo'<b>';
            $GD = $goals_for[$i] - $goals_against[$i];
            echo"$GD";
    if($sort == 'GD')
        echo'</b>';
    echo"</td>
    <td align=\"center\" valign=\"middle\" bgcolor=\"$bg1\">";
    if($sort == 'pts')
        echo'<b>';
    echo"$points[$i]";
    if($sort == 'pts')
        echo'</b>';
    echo"</td>
    </tr>";
    $i++;
    $j++;
    }
     }
}
4

4 回答 4

2

为每个分配颜色,如下例所示

for(i=0;i=5;i++)
{
  if($i%2==0)
  {
    $col="#E6E6E6";
  }
  else
  {
    $col="#FFCCE6";
   }
?>
  <table>
   <tr bgcolor="$col">
    <td>ABCDEFG</td>
   </table>
<?php
}

使用相同的逻辑,您也可以使用不同的样式

于 2013-10-01T11:55:33.733 回答
1

使用三元运算符更简化的答案:

<?php
for(i=0 ; i=5 ; i++) {
  $col = ($i%2==0) ? "#E6E6E6" : "#FFCCE6";
?>
  <table>
   <tr bgcolor="<?php print $col;?>">
    <td>ABCDEFG</td>
   </table>
<?php
}
?>
于 2013-10-01T12:46:14.147 回答
0
TRy this one :

$chk_len=sizeof($draw_line);
$chk_len_n=$chk_len-1;
$chk_len_last=$chk_len-2;
for($k = 0 ; $k < sizeof($draw_line) ; $k++)
{
 if($k==0 || $k==1) // for 1st and 2nd row
 {
   $bg="#E6E6E6";
 }
 else if($k==$chk_len_last || $k==$chk_len_n) // for last two row
 {
   $bg="#FFCCE6";
 }
 else
 {$bg="#FFFFFF";}
}
于 2013-10-01T12:25:06.177 回答
0

您可以使用 CSS:S nth-child 选择器轻松完成。

http://www.w3schools.com/cssref/sel_nth-child.asp

并使用奇偶选择器:

http://www.w3.org/Style/Examples/007/evenodd

如果您希望第 n 个孩子覆盖偶数奇数,则在规则之后添加 !important,如下所示:

CSS 中的 !important 是什么意思?

编辑:

CSS 也有第一个和最后一个子选项:

http://quirksmode.org/css/selectors/firstchild.html

于 2013-10-01T11:44:22.027 回答