首页 > 解决方案 > Bootstrap 4:在隐藏多个单元格时避免破坏表格

问题描述

我有一张这样的桌子:

<table class="table table-hover">
  <thead>
    <tr>
      <th scope="col">#</th>
      <th scope="col" class="d-none d-sm-block">First</th>
      <th scope="col" class="d-none d-sm-block">Last</th>
      <th scope="col" class="d-none d-sm-block">Handle</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th scope="row">1</th>
      <td>Mark</td>
      <td>Otto</td>
      <td>@mdo</td>
    </tr>
    <tr>
      <th scope="row">2</th>
      <td>Jacob</td>
      <td>Thornton</td>
      <td>@fat</td>
    </tr>
    <tr>
      <th scope="row">3</th>
      <td>Larry</td>
      <td>the Bird</td>
      <td>@twitter</td>
    </tr>
  </tbody>
  </table>

并且当使用d-none d-sm-block(在小屏幕上隐藏元素)时,我的整个桌子刚刚破裂,而我试图隐藏的三个单元格只是相互堆叠。

我做错了什么,还是这是 BS4 中的错误?

这是一支笔来查看它:

https://codepen.io/anon/pen/RBxjYo

标签: html-tablebootstrap-4

解决方案


您遇到问题的原因是因为您将显示设置为块而不是表格单元。

class="d-none d-sm-block"

class="d-none d-sm-table-cell"

它会正确显示。这将显示所有小或大的东西。如果您希望将其隐藏为小而显示为大于此的所有内容,那么它需要改为

class="d-none d-md-table-cell"

推荐阅读