如何在 PHP 中向表行添加多个类? [关闭]

Posted

技术标签:

【中文标题】如何在 PHP 中向表行添加多个类? [关闭]【英文标题】:How can I add more than just one class to table rows in PHP? [closed] 【发布时间】:2013-06-18 21:57:57 【问题描述】:

我正在尝试修复其他人的代码。现在我正在处理一个动态创建的表,并想为每个第二行添加一个不同的类。例如,第 3 行和第 5 行的背景应该是白色的,而第 2 4 和第 6 行的背景应该是灰色的。

谁能告诉我如何在代码中添加这样的第二类?

我不确定这个问题是否需要代码 - 这是带有表格的部分。如果这还不够,请让我知道,因为我的 php 技能不好,我什至不确定需要什么来理解这个问题。如前所述,这不是我的代码...

   $arr = array();
foreach ($them as $z => $e) 
  $_them[$e['id']] = $e;
  if (count($arr) < 50) 
    $res = mysql_query('SELECT COUNT(*) FROM `forum_comments` WHERE `id_them` = ' . $e['id'] . '');
    $row = mysql_fetch_row($res);
    $total = $row[0];

    $arr[$e['id']] = $total;
   else 
    $res = mysql_query('SELECT COUNT(*) FROM `forum_comments` WHERE `id_them` = ' . $e['id'] . '');
    $row = mysql_fetch_row($res);
    $total = $row[0];

    if ($total > $this->tools->array_val_min($arr)) 
      $arr[$this->tools->array_key_min($arr)] = $total;
    
  


arsort($arr);
$arr = array_chunk($arr, 25, true);
if (!empty($_GET['p'])) 
  $num = (int) $_GET['p'];
  if ($num == 1) 
    $arr = $arr[0];
  
  if ($num > 1) 
    $arr = $arr[1];
  


$ret = '
        <table class="forum_table">
            <tr class="forum_table_title">
                <th id="them">' . l::themes() . '</th>
                <th id="date">' . l::added() . '</th>
                <th id="users">' . l::guests() . '</th>
                <th id="commets">' . l::answers() . '</th>
                <th id="last">' . l::last_comments() . '</th>
            </tr>
            <tr class="empty_td">
                <td></td>
                <td></td>
                <td></td>
                <td></td>
                <td></td>
            </tr>
    ';

【问题讨论】:

除非你显示代码... 一些代码会很有用... 其他类可以用空格隔开:class="class1 class2" 没有代码很难知道,但你也可以看看 CSS3 中的伪选择器,尤其是 nth-child 他已经发布了代码。我认为反对票应该删除:) 【参考方案1】:

只需使用一些 css,它会自动应用它:

.your_table tr:nth-child(odd)  background-color:#00000; 
.your_table tr:nth-child(even)  background-color:#ffffff; 

【讨论】:

& @GCyrillus & swapnesh 感谢您的回复,我不知道CSS有这个功能,发现不仅有(偶数)而且还有(奇数)作为一个选项非常有帮助.【参考方案2】:

逻辑方式 -

这样的事情甚至 - $i%2 == 0

CSS 方式 -

td 
  background: white;

td:nth-child(even) 
  background: grey;

【讨论】:

谁在欺骗我 ;) 哈哈 @GCyrillus 哈哈 .. 真的不是 ***.com/questions/12827702/style-td-like-tr-odd-even .. 增加了逻辑部分 答案无论如何都无法弥补,它仍然是最合乎逻辑的 CSS 答案。我们不知道 :) 开个玩笑,觉得很有趣【参考方案3】:

Css 可以为你做到:

tr 
       background:white;
    
tr:nth-child(even) 
       background:grey;
    

【讨论】:

从 IE9 开始。 caniuse.com/#search=nth-child polyfills :) 或在 php 中取模

以上是关于如何在 PHP 中向表行添加多个类? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 React Hooks 中向表中添加行而不重复?

如何在SQL中向表中添加“X”行?

在 Qt 创建器中向表视图添加仅可读行

如何提高在SSIS中向表中插入数据的性能

如何从视图中向表中插入值

如何删除特定类的表行? [关闭]