使用CSS隐藏表行

时间:2013-03-27 09:13:31

标签: php html css

是否可以使用CSS隐藏表格行,我有一个需要这个概念的项目。 这是我的代码:

的style.css:

#hide-row { display:none; }

file.php

<table>
  <tr>
      <th>Name</th>
      <th>Address</th>
  </tr>
  <div id="hide-row">
     <?php foreach( $cops as $row ) { ?>
        <tr>
            <td><?php echo $row->name; ?></td>
            <td><?php echo $row->address; ?></td>
        </tr>
     <?php } ?>
  </div>
</table>

但是,它没有用,记录仍然出现。有人帮忙解决这个案子吗? 任何帮助将不胜感激。谢谢你的高级!

5 个答案:

答案 0 :(得分:9)

使用类而不是id:

.hide-row { display:none; }

在你的html / php文件中:

<table>
  <tr>
      <th>Name</th>
      <th>Address</th>
  </tr>
     <?php foreach( $cops as $row ) { ?>
        <tr class="hide-row">
            <td><?php echo $row->name; ?></td>
            <td><?php echo $row->address; ?></td>
        </tr>
     <?php } ?>
</table>

如果您必须对行进行分组,则可以使用tbody代码而不是div代码。

Can we have multiple <tbody> in same <table>?

 .hide-row tr { display:none; }

在你的html / php文件中:

<table>
  <tr>
      <th>Name</th>
      <th>Address</th>
  </tr>
    <tbody class="hide-row">
     <?php foreach( $cops as $row ) { ?>
        <tr>
            <td><?php echo $row->name; ?></td>
            <td><?php echo $row->address; ?></td>
        </tr>
     <?php } ?>
     </tbody>
</table>

答案 1 :(得分:3)

你不能将div作为&lt;的直接子节点。表&gt;元件。要隐藏单行,请参阅jantimon的答案。如果要对多行进行分组,请使用&lt; TBODY&GT;:

CSS

.hide-row { display:none; }

PHP

<table>
    <tr>
        <th>Name</th>
        <th>Address</th>
    </tr>
    <tbody class="hide-row">
        <?php foreach( $cops as $row ) { ?>
            <tr>
                <td><?php echo $row->name; ?></td>
                <td><?php echo $row->address; ?></td>
            </tr>
        <?php } ?>
    </tbody>
</table>

答案 2 :(得分:2)

您无法直接在div标记内嵌套table。你必须给你的行一个类,然后隐藏它。类似的东西:

.hidden {
    display: none;
}

<?php foreach( $cops as $row ) { ?>
    <tr class="hidden">
        <td><?php echo $row->name; ?></td>
        <td><?php echo $row->address; ?></td>
    </tr>
 <?php } ?>

答案 3 :(得分:2)

你不能<div><tr>之外......将课程提交给<tr>并隐藏..不需要在其周围创建<div>

<强> HTML

<tr class="hide-row">
        <td><?php echo $row->name; ?></td>
        <td><?php echo $row->address; ?></td>
    </tr>

<强>的style.css

.hide-row { display:none; }

答案 4 :(得分:2)

我会给你想要隐藏的每一行hide-row类:

<tr class="hide-row">

您的CSS将如下所示:

tr.hide-row { display: none; }

这意味着你不需要嵌套的div。