【问题标题】:PHP row background color even/oddPHP行背景颜色偶数/奇数
【发布时间】:2021-12-31 12:01:03
【问题描述】:

我有一个静态表(ID 通过循环递增,其余的只是重复), 我想将偶数行的背景更改为红色,将奇数行的背景更改为蓝色。我想用 for 和 if 来做。 我的代码:

<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>

<table>
    <tr>
        <th>id</th>
        <th>serial</th>
        <th>pds_number</th>
        <th>name</th>
        <th>familySize</th>
        <th>voucher_Value</th>
        <th>phone</th>
    </tr>
    
    <?php
     for ( $i = 1; $i < 12 ; $i++ ) { 
      if( $i % 2 == 0 ) {
        echo '<tr bgcolor="red"><td></td></tr>';
      }
      else {
        echo '<tr bgcolor="blue"><td></td></tr>';
      }  
    ?>
  
   <tr>
    <td> <?php echo "$i"; ?></td>
    <td> <?php echo "a001" ?></td>
    <td> <?php echo "1234"; ?></td>
    <td> <?php echo "nn"; ?></td>
    <td> <?php echo "1"; ?></td>
    <td> <?php echo "100"; ?></td>
    <td> <?php echo "077011111"; ?></td>
   </tr>

<?php  } ?>

</table>
</body>
</html>```

【问题讨论】:

标签: php


【解决方案1】:

这在 CSS 中解决得更好,像这样:

<style>
  table tr:nth-child(even) td {
    background-color: red;
  }
  table tr:nth-child(odd) td {
    background-color: blue;
  }
</style>

【讨论】:

  • 感谢您的回答,但我想处理 for 循环和 if 条件
  • @sarah 为什么?这种技术效率更高
  • @sarah 如果你真的想用 Html 来做,那么你需要为每一行的 着色,因为你不能为 着色。其次,不要使用像 bgcolor="red" 这样的 Html 属性,因为它们在几年前已被弃用。像这样使用样式属性:...
【解决方案2】:

试试这样:

<html>
<head>
    <title></title>
</head>
<body>

<table>
    <tr>
        <th>id</th>
        <th>serial</th>
        <th>pds_number</th>
        <th>name</th>
        <th>familySize</th>
        <th>voucher_Value</th>
        <th>phone</th>
    </tr>
    
    <?php 
for ($i=1; $i <12 ; $i++) { 
  if($i%2==0) {
     echo '<tr style="background-color:red;"><td></td></tr>';
    }
    else {
echo '<tr style="background-color:blue;"><td></td></tr>';

    }  
     
    ?>
  
   <tr>
    <td> <?php echo "$i"; ?></td>
        <td> <?php echo "a001" ?></td>
            <td> <?php echo "1234"; ?></td>
                <td> <?php echo "nn"; ?></td>
                    <td> <?php echo "1"; ?></td>
                        <td> <?php echo "100"; ?></td>
                            <td> <?php echo "077011111"; ?></td>
   </tr>

<?php  } ?>

</table>
</body>
</html>```

【讨论】:

  • 没有任何区别,行下只有一小行会改变颜色,而不是整行
  • 如果你想改变颜色,我更喜欢css。你的问题是什么?颜色没变?
  • true,但我想处理 if 条件,因为我不太擅长它并了解更多信息,行下方出现一条蓝色/红色小线。而不是整行的颜色发生变化
猜你喜欢
  • 2013-08-21
  • 2011-06-17
  • 2018-12-27
  • 1970-01-01
  • 2021-08-26
  • 1970-01-01
  • 1970-01-01
  • 2017-05-21
  • 1970-01-01
相关资源
最近更新 更多