5

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

样式.css:

#hide-row { display:none; }

文件.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>

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

4

5 回答 5

10

使用类而不是 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标签。

我们可以在同一个 <table> 中有多个 <tbody> 吗?

 .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>
于 2013-03-27T09:15:45.237 回答
3

您不能将 div 作为 <table> 元素的直接子级。要隐藏单行,请参阅 jantimon 的答案。如果要对多行进行分组,请使用 <tbody>:

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>
于 2013-03-27T09:20:35.260 回答
2

您不能直接在标签div内嵌套 a 。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 } ?>
于 2013-03-27T09:16:50.610 回答
2

你不能有<div>外面<tr>..给课程<tr>并隐藏它..不需要<div>在它周围创建一个

html

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

样式.css

.hide-row { display:none; }
于 2013-03-27T09:16:57.347 回答
2

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

<tr class="hide-row">

您的 CSS 将如下所示:

tr.hide-row { display: none; }

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

于 2013-03-27T09:17:21.340 回答