如何最好地隐藏移动视图的表列

IEn*_*ble 11 html html-table css3

我有一个HTML表,在移动浏览器中我需要隐藏它的一些列.

@media如果可能的话,我想使用查询隐藏这些cols中的2个或3个.以下代码对我不起作用:

<table>
   <tr>
      <td></td>
      <td class='collapsable'></td>
      <td class='collapsable'></td>
      <td></td>
   </tr>
</table>


      //hide cols here
      td.collapsable {display:block; }

      @media only screen and (min-width: 450px) {
           //show cols here
           td.collapsable {display:none; }
      }
Run Code Online (Sandbox Code Playgroud)

Zub*_*zob 13

这样的东西(尝试调整结果窗口/窗格的大小)

HTML:

<tr>
    <td class="one">corpse</td>
    <td>corpse</td>
    <td>corpse</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

CSS:

table{
        width: 50%;
    }
    td, th{
        border: 1px solid orange;
    }


    @media only screen and (max-width: 900px) {
        .one{
            display: none;
        }
    }
Run Code Online (Sandbox Code Playgroud)

  • 这是摆脱尸体的一种方法 (3认同)

小智 9

通过使用 nth-child 隐藏列来保持 HTML 和表格标记干净。应该适用于每个支持媒体查询的现代浏览器。

这是一个示例小提琴,展示了它的实际效果。调整结果窗格的大小以查看它的工作情况。

https://jsfiddle.net/tycahill/xm0nwr7x

干净的HTML:

<table>
  <tr>
    <td>Column 1a</td>
    <td>Column 2a</td>
    <td>Column 3a</td>
  </tr>
  <tr>
    <td>Column 1b</td>
    <td>Column 2b</td>
    <td>Column 3b</td>
  </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

隐藏第二列的 CSS:

@media only screen and (max-width: 800px) {
  td:nth-child(2) {
    display:none;
  }
}
Run Code Online (Sandbox Code Playgroud)